Project
Loading...
Searching...
No Matches
o2::framework::expressions::Node Struct Reference

A generic tree node. More...

#include <Expressions.h>

Public Types

using self_t = std::variant< LiteralNode, BindingNode, OpNode, PlaceholderNode, ConditionalNode >
 variant with possible nodes
 

Public Member Functions

 Node (LiteralNode &&v)
 
 Node (PlaceholderNode &&v)
 
 Node (Node &&n)
 
 Node (BindingNode const &n)
 
 Node (ConditionalNode op, Node &&then_, Node &&else_, Node &&condition_)
 
 Node (OpNode op, Node &&l, Node &&r)
 
 Node (OpNode op, Node &&l)
 

Public Attributes

self_t self
 
size_t index = 0
 
std::unique_ptr< Nodeleft
 pointers to children
 
std::unique_ptr< Noderight
 
std::unique_ptr< Nodecondition
 

Detailed Description

A generic tree node.

Definition at line 164 of file Expressions.h.

Member Typedef Documentation

◆ self_t

using o2::framework::expressions::Node::self_t = std::variant<LiteralNode, BindingNode, OpNode, PlaceholderNode, ConditionalNode>

variant with possible nodes

Definition at line 200 of file Expressions.h.

Constructor & Destructor Documentation

◆ Node() [1/7]

o2::framework::expressions::Node::Node ( LiteralNode &&  v)
inline

Definition at line 165 of file Expressions.h.

◆ Node() [2/7]

o2::framework::expressions::Node::Node ( PlaceholderNode &&  v)
inline

Definition at line 169 of file Expressions.h.

◆ Node() [3/7]

o2::framework::expressions::Node::Node ( Node &&  n)
inline

Definition at line 173 of file Expressions.h.

◆ Node() [4/7]

o2::framework::expressions::Node::Node ( BindingNode const &  n)
inline

Definition at line 177 of file Expressions.h.

◆ Node() [5/7]

o2::framework::expressions::Node::Node ( ConditionalNode  op,
Node &&  then_,
Node &&  else_,
Node &&  condition_ 
)
inline

Definition at line 181 of file Expressions.h.

◆ Node() [6/7]

o2::framework::expressions::Node::Node ( OpNode  op,
Node &&  l,
Node &&  r 
)
inline

Definition at line 187 of file Expressions.h.

◆ Node() [7/7]

o2::framework::expressions::Node::Node ( OpNode  op,
Node &&  l 
)
inline

Definition at line 193 of file Expressions.h.

Member Data Documentation

◆ condition

std::unique_ptr<Node> o2::framework::expressions::Node::condition

Definition at line 206 of file Expressions.h.

◆ index

size_t o2::framework::expressions::Node::index = 0

Definition at line 202 of file Expressions.h.

◆ left

std::unique_ptr<Node> o2::framework::expressions::Node::left

pointers to children

Definition at line 204 of file Expressions.h.

◆ right

std::unique_ptr<Node> o2::framework::expressions::Node::right

Definition at line 205 of file Expressions.h.

◆ self

self_t o2::framework::expressions::Node::self

Definition at line 201 of file Expressions.h.


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