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

#include <logical-and.h>

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

Public Member Functions

 LogicalAnd (Expression op0, Expression op1, Meta m=Meta())
 
const auto & op0 () const
 
const auto & op1 () const
 
bool operator== (const LogicalAnd &other) const
 
bool isLhs () const
 
bool isTemporary () const
 
auto type () 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 > 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 Expression setOp0 (const LogicalAnd &e, const Expression &op)
 
static Expression setOp1 (const LogicalAnd &e, const Expression &op)
 

Detailed Description

AST node for a logical "and" expression.

Member Function Documentation

◆ isConstant()

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

Implements Expression interface.

◆ isEqual()

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

Implements Expression interface.

◆ isLhs()

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

Implements Expression interface.

◆ isTemporary()

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

Implements Expression interface.

◆ properties()

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

Implements Node interface.

◆ setOp0()

static Expression hilti::expression::LogicalAnd::setOp0 ( const LogicalAnd e,
const Expression &  op 
)
inlinestatic

Returns a new "and" expression with the first operand expression replaced.

Parameters
eoriginal expression
opnew operand expresssion
Returns
new expression that's equal to original one but with the operand replaced

◆ setOp1()

static Expression hilti::expression::LogicalAnd::setOp1 ( const LogicalAnd e,
const Expression &  op 
)
inlinestatic

Returns a new "and" expression with the second operand expression replaced.

Parameters
eoriginal expression
opnew operand expresssion
Returns
new expression that's equal to original one but with the operand replaced

◆ type()

auto hilti::expression::LogicalAnd::type ( ) const
inline

Implements Expression interface.


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