32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
# File 'lib/autoc/vector.rb', line 32
def render_interface(stream)
if public?
stream << %{
/**
#{defgroup}
@brief Resizable vector of elements of type #{element}
#{type} is a container that encapsulates dynamic size array of values of type #{element}.
It is a contiguous direct access collection where elements can be directly referenced by an integer index belonging to the [0, @ref #{size}) range.
For iteration over the vector elements refer to @ref #{range}.
@see C++ [std::vector<T>](https://en.cppreference.com/w/cpp/container/vector)
@since 2.0
*/
}
stream << %{
/**
#{ingroup}
@brief Opaque structure holding state of the vector
@since 2.0
*/
}
else
stream << PRIVATE
end
stream << %{
typedef struct {
#{element.lvalue} elements; /**< @private */
size_t size; /**< @private */
} #{signature};
}
end
|