You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Added the `final` keyword to the following classes:
- `{vertex/edge}_descriptor`
- `adjacency_{list/matrix}`
- `graph`
- Marked the destructors of the property classes and the `iterator_range` class as `virtual` (if they are explicitly configured not to be final)
Copy file name to clipboardExpand all lines: docs/core_util_types.md
+20Lines changed: 20 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -196,6 +196,17 @@ The table below contains the basic type aliases defined in the library.
196
196
- Reads the weight property from an input stream.
197
197
-*Constraints*: `weight_type` must be readable (`type_traits::c_readable<weight_type>`).
198
198
199
+
### Deriving from the property types
200
+
201
+
> [!IMPORTANT]
202
+
> The `name_property`, `dynamic_properties` and `binary_color` classes are marked `final` by default. To be able to use them as base classes you have to add:
203
+
>
204
+
> ```cpp
205
+
> #define GL_CONFIG_PROPERTY_TYPES_NOT_FINAL
206
+
> ```
207
+
>
208
+
> in your program or add a `-DGL_CONFIG_PROPERTY_TYPES_NOT_FINAL` flag when compiling.
209
+
199
210
### Associated type traits
200
211
201
212
This section describes the type traits that are associated with the property types defined in the library. These traits help ensure that properties meet specific requirements and can be used correctly within the library.
@@ -291,6 +302,15 @@ This section provides the description of types used to manage range/collection i
291
302
-`operator[](types::size_type position) -> value_type&` - Provides access to the element at the specified position (equivalent to `element_at`).
292
303
-`operator[](types::size_type position) const -> const value_type&` - Provides access to the element at the specified position (equivalent to `element_at`).
293
304
305
+
> [!IMPORTANT]
306
+
> The `iterator_range` class is marked `final` by default. To use this class as a base class you have to add:
307
+
>
308
+
> ```cpp
309
+
> #define GL_CONFIG_IT_RANGE_NOT_FINAL
310
+
> ```
311
+
>
312
+
> in your program or add a `-DGL_CONFIG_IT_RANGE_NOT_FINAL` flag when compiling.
0 commit comments