Spicy
Public Member Functions | List of all members
hilti::declaration::Type Class Reference

#include <type.h>

Inheritance diagram for hilti::declaration::Type:
hilti::DeclarationBase hilti::NodeBase hilti::trait::isDeclaration hilti::trait::isNode hilti::trait::isNode

Public Member Functions

 Type (ID id, ::hilti::Type type, Linkage linkage=Linkage::Private, Meta m=Meta())
 
 Type (ID id, ::hilti::Type type, std::optional< AttributeSet > attrs, Linkage linkage=Linkage::Private, Meta m=Meta())
 
const auto & type () const
 
NodeRef typeRef () const
 
auto attributes () const
 
bool isOnHeap () const
 
auto typeID () const
 
auto cxxID () const
 
auto resolvedID () const
 
void setType (const ::hilti::Type &t)
 
bool operator== (const Type &other) const
 
bool isConstant () const
 
const IDid () const
 
Linkage linkage () const
 
std::string displayName () const
 
auto isEqual (const Declaration &other) const
 
auto properties () const
 
- Public Member Functions inherited from hilti::DeclarationBase
const IDcanonicalID () const
 
void setCanonicalID (ID id)
 
- Public Member Functions inherited from hilti::NodeBase
 NodeBase (Meta meta)
 
 NodeBase (std::vector< Node > children, Meta meta)
 
template<typename T >
const T & child (int i) const
 
template<typename T >
void assertChildIsA (int i)
 
template<typename T >
auto children (int begin, int end) const
 
auto childRefs (int begin, int end)
 
template<typename T >
hilti::node::Set< T > childrenOfType () const
 
template<typename T >
std::vector< NodeRefchildRefsOfType () const
 
void addChild (Node n)
 
const auto & children () const
 
auto & children ()
 
auto & meta () const
 
void setMeta (Meta m)
 
bool pruneWalk () const
 

Detailed Description

AST node for a type declaration.

Member Function Documentation

◆ cxxID()

auto hilti::declaration::Type::cxxID ( ) const
inline

Shortcut to type::cxxID() for the declared type.

◆ displayName()

std::string hilti::declaration::Type::displayName ( ) const
inline

Implements Declaration interface.

◆ id()

const ID& hilti::declaration::Type::id ( ) const
inline

Implements Declaration interface.

◆ isConstant()

bool hilti::declaration::Type::isConstant ( ) const
inline

Internal method for use by builder API only. Implements Declaration interface.

◆ isEqual()

auto hilti::declaration::Type::isEqual ( const Declaration other) const
inline

Implements Declaration interface.

◆ linkage()

Linkage hilti::declaration::Type::linkage ( ) const
inline

Implements Declaration interface.

◆ properties()

auto hilti::declaration::Type::properties ( ) const
inline

Implements Node interface.

◆ resolvedID()

auto hilti::declaration::Type::resolvedID ( ) const
inline

Shortcut to type::resolvedID() for the declared type.

◆ typeID()

auto hilti::declaration::Type::typeID ( ) const
inline

Shortcut to type::typeID() for the declared type.


The documentation for this class was generated from the following file: