1 #ifndef SIPLASPLAS_REFLECTION_DYNAMIC_ENUM_HPP     2 #define SIPLASPLAS_REFLECTION_DYNAMIC_ENUM_HPP     5 #include <siplasplas/typeerasure/typeinfo.hpp>     6 #include <siplasplas/typeerasure/simpleany.hpp>    11 namespace dynamic_reflection
    18 class SIPLASPLAS_REFLECTION_DYNAMIC_EXPORT 
Enum : 
public Entity    34     static std::shared_ptr<Enum> create(
    35         const SourceInfo& sourceInfo,
    38         const std::vector<std::string>& constantsNames,
    39         const std::vector<std::int64_t>& constantsValues
    53     static Enum& fromEntity(
const std::shared_ptr<Entity>& entity);
    58     std::size_t count() 
const;
    66     const std::string& name(std::size_t i) 
const;
    71     const std::vector<std::string>& names() 
const;
    84     std::int64_t value(std::size_t i) 
const;
    89     const std::vector<std::int64_t>& values() 
const;
    96     bool isUnsigned() 
const;
   104     std::int64_t fromString(
const std::string& name) 
const;
   113     const std::string& toString(std::int64_t value) 
const;
   117         const SourceInfo& sourceInfo,
   120         const std::vector<std::string>& constantsNames,
   121         const std::vector<std::int64_t>& constantsValues
   126     std::vector<std::string>  _names;
   127     std::vector<std::int64_t> _values;
   134 #endif // SIPLASPLAS_REFLECTION_DYNAMIC_ENUM_HPP Definition: canary_allocator.hpp:7
 
Stores dynamic reflection information of an enumeration type. 
Definition: enum.hpp:18
 
Contains minimal information to execute the value semantics operations of a type. ...
Definition: typeinfo.hpp:113
 
Represents a C++ semantic entity (Class, function, namespace, etc) and manages its dynamic reflection...
Definition: entity.hpp:22