Magnum::OpenDdl::Validation namespace

OpenDDL document validation.

See Document::validate() for more information.

Validation of OpenDDL documents. See OpenDdl::Document::validate() for more information.

This library is built if MAGNUM_WITH_OPENDDL is enabled when building Magnum Plugins. To use this library with CMake, request the OpenDdl component of the MagnumPlugins package and link to the MagnumPlugins::OpenDdl target:

find_package(MagnumPlugins REQUIRED OpenDdl)

# ...
target_link_libraries(your-app PRIVATE MagnumPlugins::OpenDdl)

Additionally, if you're using Magnum as a CMake subproject, bundle the magnum-plugins repository and do the following before calling find_package():

add_subdirectory(magnum-plugins EXCLUDE_FROM_ALL)


class Property
Property specification.
struct RequiredPropertyType
Tag type for required and optional properties.
class Structure
Structure spec for validation.


using Structures = std::initializer_list<std::pair<Int, std::pair<Int, Int>>>
List of allowed structures for validation.
using Properties = std::initializer_list<Property>
List of allowed properties for validation.
using Primitives = std::initializer_list<Type>
List of allowed primitive types for validation.


RequiredPropertyType RequiredProperty constexpr
Required property.
RequiredPropertyType OptionalProperty constexpr
Optional property.

Typedef documentation

typedef std::initializer_list<std::pair<Int, std::pair<Int, Int>>> Magnum::OpenDdl::Validation::Structures

List of allowed structures for validation.

First value is structure identifier, the pair specifies minimal and maximal allowed count of structures with given identifier. Maximal count set to 0 means that there is no upper limit.

See Validation::Structure for example usage.

typedef std::initializer_list<Property> Magnum::OpenDdl::Validation::Properties

List of allowed properties for validation.

See Validation::Property for example usage.

typedef std::initializer_list<Type> Magnum::OpenDdl::Validation::Primitives

List of allowed primitive types for validation.

See Validation::Structure for example usage.

Variable documentation

RequiredPropertyType Magnum::OpenDdl::Validation::RequiredProperty constexpr

Required property.

RequiredPropertyType Magnum::OpenDdl::Validation::OptionalProperty constexpr

Optional property.