#include <typemodel.hh>
Public Types | |
enum | NumericCategory { SInt = Type::ValidCategories, UInt, Float } |
Public Member Functions | |
virtual std::set< Type const * > | dependsOn () const |
NumericCategory | getNumericCategory () const |
Numeric (const std::string &name, size_t size, NumericCategory category) | |
Static Public Attributes | |
static const int | ValidCategories = Float + 1 |
Private Member Functions | |
virtual bool | do_compare (Type const &other, bool equality, RecursionStack &stack) const |
virtual Type * | do_merge (Registry ®istry, RecursionStack &stack) const |
Private Attributes | |
NumericCategory | m_category |
Numeric values (integer, unsigned integer and floating point)
Definition at line 209 of file typemodel.hh.
Definition at line 212 of file typemodel.hh.
Typelib::Numeric::Numeric | ( | const std::string & | name, |
size_t | size, | ||
NumericCategory | category | ||
) |
Creates a basic type from name
, size
and category
Definition at line 157 of file typemodel.cc.
virtual std::set<Type const*> Typelib::Numeric::dependsOn | ( | ) | const [inline, virtual] |
The set of types this type depends upon
This method returns the set of types that are directly depended-upon by this type
Implements Typelib::Type.
Definition at line 227 of file typemodel.hh.
bool Typelib::Numeric::do_compare | ( | Type const & | other, |
bool | equality, | ||
RecursionStack & | stack | ||
) | const [private, virtual] |
Definition at line 160 of file typemodel.cc.
Type * Typelib::Numeric::do_merge | ( | Registry & | registry, |
RecursionStack & | stack | ||
) | const [private, virtual] |
Called by Type::merge when the type does not exist in registry
already. This method has to create a new type in registry that matches the type definition of *this.
All types referenced by *this must be moved to their equivalent in registry
.
Implements Typelib::Type.
Definition at line 163 of file typemodel.cc.
The category of this numeric type
Definition at line 159 of file typemodel.cc.
NumericCategory Typelib::Numeric::m_category [private] |
Reimplemented from Typelib::Type.
Definition at line 232 of file typemodel.hh.
const int Typelib::Numeric::ValidCategories = Float + 1 [static] |
Reimplemented from Typelib::Type.
Definition at line 218 of file typemodel.hh.