Envision
A visual programming IDE for object-oriented languages
List of all members | Public Member Functions | Private Attributes
OOModel::ArrayType Class Reference
Inheritance diagram for OOModel::ArrayType:
OOModel::Type

Public Member Functions

 ArrayType (const ArrayType &other)
 
 ArrayType (std::unique_ptr< Type > elementType, bool isValueType)
 
virtual ArrayTypeclone () const override
 
const TypeelementType () const
 
virtual bool equals (const Type *other) const override
 
- Public Member Functions inherited from OOModel::Type
 Type (bool isValueType)
 
 Type (const Type &other)
 
virtual ~Type ()
 
virtual bool isError () const
 Returns true if this is an error type. More...
 
bool isValueType () const
 Returns true if the this type belongs to an expression representing a value. More...
 
Qualifiers qualifiers () const
 
TypeSystem::TypeRelations relationTo (const Type *other) const
 
void setQualifiers (Qualifiers q, bool enable=true)
 
void setValueType (bool isValueType)
 

Private Attributes

std::unique_ptr< TypeelementType_
 

Additional Inherited Members

- Public Types inherited from OOModel::Type
enum  Qualifier { CONST = 0x1 , VOLATILE = 0x2 }
 
using Qualifiers = QFlags< Qualifier >
 

Constructor & Destructor Documentation

◆ ArrayType() [1/2]

OOModel::ArrayType::ArrayType ( std::unique_ptr< Type elementType,
bool  isValueType 
)

◆ ArrayType() [2/2]

OOModel::ArrayType::ArrayType ( const ArrayType other)

Member Function Documentation

◆ clone()

ArrayType * OOModel::ArrayType::clone ( ) const
overridevirtual

Implements OOModel::Type.

◆ elementType()

const Type * OOModel::ArrayType::elementType ( ) const
inline

◆ equals()

bool OOModel::ArrayType::equals ( const Type other) const
overridevirtual

Implements OOModel::Type.

Member Data Documentation

◆ elementType_

std::unique_ptr<Type> OOModel::ArrayType::elementType_
private