Spicy
Public Member Functions | Static Public Member Functions | List of all members
hilti::ctor::Default Class Reference

#include <default.h>

Inheritance diagram for hilti::ctor::Default:
hilti::NodeBase hilti::trait::isCtor hilti::trait::isNode hilti::trait::isNode

Public Member Functions

 Default (Type t, Meta m=Meta())
 
 Default (Type t, std::vector< Expression > type_args, Meta m=Meta())
 
auto typeArguments () const
 
bool operator== (const Default &other) const
 
Type type () const
 
bool isConstant () const
 
bool isLhs () const
 
auto isTemporary () const
 
auto isEqual (const Ctor &other) const
 
auto properties () const
 
- Public Member Functions inherited from hilti::NodeBase
 NodeBase (Meta meta)
 
 NodeBase (std::vector< Node > childs, Meta meta)
 
template<typename T >
const T & child (int i) const
 
template<typename T >
void assertChildIsA (int i)
 
template<typename T >
std::vector< T > childs (int begin, int end) const
 
template<typename T >
std::vector< T > childsOfType () const
 
template<typename T >
auto nodesOfType () const
 
template<typename T >
auto nodesOfType ()
 
void addChild (Node n)
 
auto & childs () const
 
auto & childs ()
 
auto & meta () const
 
void setMeta (Meta m)
 
const NodeReforiginalNode () const
 
void setOriginalNode (const NodeRef &n)
 
void clearCache ()
 

Static Public Member Functions

static Ctor setTypeArguments (const Default &d, std::vector< hilti::Expression > args)
 

Detailed Description

AST node for a constructor for a type's default value.

Constructor & Destructor Documentation

◆ Default() [1/2]

hilti::ctor::Default::Default ( Type  t,
Meta  m = Meta() 
)
inline

Constructs a default value of type t.

◆ Default() [2/2]

hilti::ctor::Default::Default ( Type  t,
std::vector< Expression >  type_args,
Meta  m = Meta() 
)
inline

Constructs a default value of type t, passing specified arguments to types with parameters.

Member Function Documentation

◆ isConstant()

bool hilti::ctor::Default::isConstant ( ) const
inline

Implements Ctor interface.

◆ isEqual()

auto hilti::ctor::Default::isEqual ( const Ctor &  other) const
inline

Implements Ctor interface.

◆ isLhs()

bool hilti::ctor::Default::isLhs ( ) const
inline

Implements Ctor interface.

◆ isTemporary()

auto hilti::ctor::Default::isTemporary ( ) const
inline

Implements Ctor interface.

◆ properties()

auto hilti::ctor::Default::properties ( ) const
inline

Implements Node interface.

◆ setTypeArguments()

static Ctor hilti::ctor::Default::setTypeArguments ( const Default d,
std::vector< hilti::Expression >  args 
)
inlinestatic

Returns a new local default constructor with the type argument expressions replaced.

Parameters
doriginal declaration
inew init expresssion
Returns
new declaration that's equal to original one but with the init expression replaced

◆ type()

Type hilti::ctor::Default::type ( ) const
inline

Implements Ctor interface.


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