Spicy
Public Member Functions | List of all members
spicy::type::unit::item::Field Class Reference

#include <field.h>

Inheritance diagram for spicy::type::unit::item::Field:
hilti::NodeBase spicy::trait::isUnitItem hilti::trait::isNode hilti::trait::isNode

Public Member Functions

 Field (const std::optional< ID > &id, Type type, Engine e, const std::vector< Expression > &args, std::optional< Expression > repeat, const std::vector< Expression > &sinks, std::optional< AttributeSet > attrs={}, std::optional< Expression > cond={}, std::vector< Hook > hooks={}, Meta m=Meta())
 
 Field (const std::optional< ID > &id, Ctor ctor, Engine e, const std::vector< Expression > &args, std::optional< Expression > repeat, const std::vector< Expression > &sinks, std::optional< AttributeSet > attrs={}, std::optional< Expression > cond={}, std::vector< Hook > hooks={}, Meta m=Meta())
 
 Field (const std::optional< ID > &id, Item item, Engine e, const std::vector< Expression > &args, std::optional< Expression > repeat, const std::vector< Expression > &sinks, std::optional< AttributeSet > attrs={}, std::optional< Expression > cond={}, std::vector< Hook > hooks={}, const Meta &m=Meta())
 
 Field (const std::optional< ID > &id, NodeRef type, Engine e, const std::vector< Expression > &args, std::optional< Expression > repeat, const std::vector< Expression > &sinks, std::optional< AttributeSet > attrs={}, std::optional< Expression > cond={}, std::vector< Hook > hooks={}, const Meta &m=Meta())
 
 Field (const Field &other)=default
 
 Field (Field &&other)=default
 
const auto & id () const
 
auto index () const
 
auto ctor () const
 
auto item () const
 
auto repeatCount () const
 
auto attributes () const
 
auto condition () const
 
auto arguments () const
 
auto sinks () const
 
auto hooks () const
 
Engine engine () const
 
bool isContainer () const
 
bool isForwarding () const
 
bool isTransient () const
 
bool emitHook () const
 
const TypeoriginalType () const
 
const TypeparseType () const
 
NodeRef parseTypeRef () const
 
const TypeitemType () const
 
const TypeddType () const
 
NodeRef ddRef () const
 
auto itemRef ()
 
std::optional< std::pair< const Expression, std::optional< const Type > > > convertExpression () const
 
void setForwarding (bool is_forwarding)
 
void setDDType (Type t)
 
void setIndex (uint64_t index)
 
void setItemType (Type t)
 
void setParseType (Type t)
 
bool operator== (const Field &other) const
 
Fieldoperator= (const Field &other)=default
 
Fieldoperator= (Field &&other)=default
 
bool isResolved () const
 
auto isEqual (const Item &other) const
 
auto properties () const
 
- 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 unit field.


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