nixd
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
nixf::Expr Class Reference

#include <Basic.h>

Inheritance diagram for nixf::Expr:
[legend]
Collaboration diagram for nixf::Expr:
[legend]

Public Member Functions

bool maybeLambda () const
 
- Public Member Functions inherited from nixf::Node
NodeKind kind () const
 
LexerCursorRange range () const
 
PositionRange positionRange () const
 
LexerCursor lCur () const
 
LexerCursor rCur () const
 
const char * name () const
 
virtual ChildVector children () const =0
 
virtual ~Node ()=default
 
const Nodedescend (PositionRange Range) const
 Descendant node that contains the given range.
 
std::string_view src (std::string_view Src) const
 

Static Public Member Functions

static bool classof (const Node *N)
 
static bool isExpr (NodeKind Kind)
 
static bool maybeLambda (NodeKind Kind)
 
- Static Public Member Functions inherited from nixf::Node
static const char * name (NodeKind Kind)
 

Protected Member Functions

 Expr (NodeKind Kind, LexerCursorRange Range)
 
- Protected Member Functions inherited from nixf::Node
 Node (NodeKind Kind, LexerCursorRange Range)
 

Additional Inherited Members

- Public Types inherited from nixf::Node
enum  NodeKind { NK_BeginExpr , NK_EndExpr }
 
using ChildVector = boost::container::small_vector<Node *, 8>
 

Detailed Description

Definition at line 70 of file Basic.h.

Constructor & Destructor Documentation

◆ Expr()

nixf::Expr::Expr ( NodeKind Kind,
LexerCursorRange Range )
inlineexplicitprotected

Definition at line 72 of file Basic.h.

References nixf::Node::NK_BeginExpr, and nixf::Node::NK_EndExpr.

Member Function Documentation

◆ classof()

static bool nixf::Expr::classof ( const Node * N)
inlinestatic

Definition at line 77 of file Basic.h.

References isExpr(), and nixf::Node::kind().

◆ isExpr()

static bool nixf::Expr::isExpr ( NodeKind Kind)
inlinestatic

Definition at line 79 of file Basic.h.

References nixf::Node::NK_BeginExpr, and nixf::Node::NK_EndExpr.

Referenced by classof(), maybeLambda(), and nixf::ParentMapAnalysis::upExpr().

◆ maybeLambda() [1/2]

bool nixf::Expr::maybeLambda ( ) const
inline

Definition at line 99 of file Basic.h.

References nixf::Node::kind(), and maybeLambda().

Referenced by maybeLambda().

◆ maybeLambda() [2/2]

static bool nixf::Expr::maybeLambda ( NodeKind Kind)
inlinestatic
Returns
true if the expression might be evaluated to lambda.

Definition at line 84 of file Basic.h.

References isExpr().


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