45 size_t getSize()
const override;
72 std::shared_ptr<const DataType>
getSubType()
const;
77 std::shared_ptr<const DataType> subType;
80 std::string typeSpecName;
Register and manage datatypes at runtime.
Definition: DataTypeInator.hpp:16
Abstract base class for a DataTypeVisitor.
Definition: DataTypeVisitor.hpp:20
Abstract base class for DataTypes.
Definition: DataType.hpp:11
Definition: PointerDataType.hpp:12
bool validate(DataTypeInator *dataTypeInator) override
Verify that all of the types that are named by this DataType or subordinate DataTypes are resolvable ...
Definition: PointerDataType.cpp:36
std::shared_ptr< const DataType > getSubType() const
Definition: PointerDataType.cpp:90
bool isValid() const override
Determine whether this type has already been successfully validated.
Definition: PointerDataType.cpp:49
size_t getSize() const override
Definition: PointerDataType.cpp:54
PointerDataType & operator=(PointerDataType rhs)=delete
bool accept(DataTypeVisitor *visitor) const override
Definition: PointerDataType.cpp:86
void * createInstance(unsigned int num) const override
Definition: PointerDataType.cpp:59
~PointerDataType()
Definition: PointerDataType.cpp:28
PointerDataType(const PointerDataType &original)=delete
std::string makeDeclaration(std::string declarator) const override
Definition: PointerDataType.cpp:76
PointerDataType(std::string typeSpecifierName)
Definition: PointerDataType.cpp:15
std::string getTypeSpecName() const override
Get the Type Spec Name object.
Definition: PointerDataType.cpp:71
void deleteInstance(void *address) const override
Delete this instance.
Definition: PointerDataType.cpp:65