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

Public Member Functions

 AttributeChain (const QString &typeName, AttributeChain *parentChain)
 
QVector< CompositeIndex > & addExtension (int extensionId)
 
const Attributeattribute (const CompositeIndex &index) const
 
const QVector< CompositeIndex > & extension (int extensionId) const
 
bool hasAttribute (const QString &name) const
 
bool hasExtensionInHierarchy (int extensionId) const
 
CompositeIndex indexForAttribute (const QString &name) const
 
AttributeChainlevel (int level) const
 
int numLevels () const
 
AttributeChainparent ()
 
int recursiveSize () const
 
const QString & typeName () const
 

Private Member Functions

 AttributeChain (const QString &typeName)
 Only for CompositeNode. More...
 

Private Attributes

QMap< int, QVector< CompositeIndex > > extensions_
 
int numLevels_ {1}
 The number of levels of attributes, including this one. More...
 
AttributeChainparent_ {}
 
QString typeName_
 

Friends

class CompositeNode
 

Constructor & Destructor Documentation

◆ AttributeChain() [1/2]

Model::AttributeChain::AttributeChain ( const QString &  typeName)
private

Only for CompositeNode.

◆ AttributeChain() [2/2]

Model::AttributeChain::AttributeChain ( const QString &  typeName,
AttributeChain parentChain 
)

Member Function Documentation

◆ addExtension()

QVector< CompositeIndex > & Model::AttributeChain::addExtension ( int  extensionId)

◆ attribute()

const Attribute & Model::AttributeChain::attribute ( const CompositeIndex index) const

◆ extension()

const QVector< CompositeIndex > & Model::AttributeChain::extension ( int  extensionId) const

◆ hasAttribute()

bool Model::AttributeChain::hasAttribute ( const QString &  name) const

◆ hasExtensionInHierarchy()

bool Model::AttributeChain::hasExtensionInHierarchy ( int  extensionId) const

◆ indexForAttribute()

CompositeIndex Model::AttributeChain::indexForAttribute ( const QString &  name) const

◆ level()

AttributeChain * Model::AttributeChain::level ( int  level) const

◆ numLevels()

int Model::AttributeChain::numLevels ( ) const

◆ parent()

AttributeChain * Model::AttributeChain::parent ( )

◆ recursiveSize()

int Model::AttributeChain::recursiveSize ( ) const

◆ typeName()

const QString & Model::AttributeChain::typeName ( ) const

Friends And Related Function Documentation

◆ CompositeNode

friend class CompositeNode
friend

Member Data Documentation

◆ extensions_

QMap< int, QVector<CompositeIndex> > Model::AttributeChain::extensions_
private

◆ numLevels_

int Model::AttributeChain::numLevels_ {1}
private

The number of levels of attributes, including this one.

◆ parent_

AttributeChain* Model::AttributeChain::parent_ {}
private

◆ typeName_

QString Model::AttributeChain::typeName_
private