|
nixd
|
Abstract class for binary operators and unary operators. More...
#include <Op.h>
Public Member Functions | |
| ExprOp (NodeKind Kind, LexerCursorRange Range, std::shared_ptr< Op > O) | |
| Op & | op () const |
| ChildVector | children () const override |
| Public Member Functions inherited from nixf::Expr | |
| 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 | ~Node ()=default |
| const Node * | descend (PositionRange Range) const |
| Descendant node that contains the given range. | |
| std::string_view | src (std::string_view Src) const |
Additional Inherited Members | |
| Public Types inherited from nixf::Node | |
| enum | NodeKind { NK_BeginExpr , NK_EndExpr } |
| using | ChildVector = boost::container::small_vector<Node *, 8> |
| Static Public Member Functions inherited from nixf::Expr | |
| 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 inherited from nixf::Expr | |
| Expr (NodeKind Kind, LexerCursorRange Range) | |
| Protected Member Functions inherited from nixf::Node | |
| Node (NodeKind Kind, LexerCursorRange Range) | |
|
inline |
Definition at line 29 of file Op.h.
References nixf::Expr::Expr().
Referenced by nixf::ExprBinOp::ExprBinOp(), nixf::ExprOpHasAttr::ExprOpHasAttr(), and nixf::ExprUnaryOp::ExprUnaryOp().
|
inlinenodiscardoverridevirtual |
Implements nixf::Node.
Reimplemented in nixf::ExprOpHasAttr, and nixf::ExprUnaryOp.
|
inlinenodiscard |
Definition at line 34 of file Op.h.
Referenced by nixf::ExprBinOp::children(), and nixf::ExprUnaryOp::children().