Modules | Files | Inheritance Tree | Inheritance Graph | Name Index | Config
namespace Synopsis::Parser::C++::AST
class Inheritance
Files: Synopsis/Parser/C++/syn/ast.hh

Inheritance class. This class encapsulates the information about an inheritance, namely its accessability. Note that classes inherit from types, not class declarations. As such it's possible to inherit from a parameterized type, or a declared typedef or class/struct.


Public Typedefs Summary:
std::vector<Inheritance*>vector
A vector of Inheritance objects [Source]
std::vector<std::string>Attributes
A typedef of the Attributes type [Source]

Public Member functions Summary:
 constructorInheritance(Types::Type* parent, const Attributes& attributes)
Constructor [Source]
 voidaccept(Visitor*)
Accepts the given AST::Visitor [Source]
 Types::Type*parent()
Returns the Class object this inheritance refers to. [Source]
const Attributes&attributes()
Returns the attributes of this inheritance [Source]

Private Data members Summary:
Types::Type*m_parent
The parent class or typedef to class [Source]
Attributesm_attrs
The attributes [Source]

Public Member function Details:
 Types::Type* parent()

Returns the Class object this inheritance refers to. The method returns a Type since typedefs to classes are preserved to enhance readability of the generated docs. Note that the parent may also be a non-declaration type, such as vector