Spicy
Public Member Functions | List of all members
hilti::expression::ListComprehension Class Reference

#include <list-comprehension.h>

Inheritance diagram for hilti::expression::ListComprehension:
hilti::NodeBase hilti::trait::isExpression hilti::trait::isNode hilti::trait::isNode

Public Member Functions

 ListComprehension (Expression input, Expression output, const ID &id, std::optional< Expression > cond, Meta m=Meta())
 
const auto & input () const
 
const auto & output () const
 
const auto & local () const
 
auto localRef () const
 
auto condition () const
 
IntrusivePtr< Scopescope () const
 
void setLocalType (const Type &t)
 
void setElementType (const Type &x)
 
bool operator== (const ListComprehension &other) const
 
bool isLhs () const
 
bool isTemporary () const
 
const Typetype () const
 
auto isConstant () const
 
auto isEqual (const Expression &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 vector comprehension expression.

Member Function Documentation

◆ isConstant()

auto hilti::expression::ListComprehension::isConstant ( ) const
inline

Implements Expression interface.

◆ isEqual()

auto hilti::expression::ListComprehension::isEqual ( const Expression &  other) const
inline

Implements Expression interface.

◆ isLhs()

bool hilti::expression::ListComprehension::isLhs ( ) const
inline

Implements Expression interface.

◆ isTemporary()

bool hilti::expression::ListComprehension::isTemporary ( ) const
inline

Implements Expression interface.

◆ properties()

auto hilti::expression::ListComprehension::properties ( ) const
inline

Implements Node interface.

◆ scope()

IntrusivePtr<Scope> hilti::expression::ListComprehension::scope ( ) const
inline

Returns the output expressions's scope. Note that the scope is shared among any copies of an instance.

◆ type()

const Type& hilti::expression::ListComprehension::type ( ) const
inline

Implements Expression interface.


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