libqasm
library for handling cQASM files
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
cqasm::v1::semantic::Node Class Referenceabstract

Main class for all nodes. More...

Public Member Functions

virtual NodeType type () const =0
 Returns the NodeType of this node. More...
 
virtual One< Nodecopy () const =0
 Returns a shallow copy of this node. More...
 
virtual One< Nodeclone () const =0
 Returns a deep copy of this node. More...
 
virtual bool equals (const Node &rhs) const =0
 Value-based equality operator. More...
 
virtual bool operator== (const Node &rhs) const =0
 Pointer-based equality operator. More...
 
bool operator!= (const Node &rhs) const
 Pointer-based inequality operator. More...
 
template<typename T >
visit (Visitor< T > &visitor)
 Visit this object. More...
 
void dump (std::ostream &out=std::cout, int indent=0)
 Writes a debug dump of this node to the given stream. More...
 
void dump_seq (std::ostream &out=std::cout, int indent=0)
 Alternate debug dump that represents links and node uniqueness via sequence number tags. More...
 
virtual Annotatedas_annotated ()
 Interprets this node to a node of type Annotated. More...
 
virtual const Annotatedas_annotated () const
 Interprets this node to a node of type Annotated. More...
 
virtual AnnotationDataas_annotation_data ()
 Interprets this node to a node of type AnnotationData. More...
 
virtual const AnnotationDataas_annotation_data () const
 Interprets this node to a node of type AnnotationData. More...
 
virtual Blockas_block ()
 Interprets this node to a node of type Block. More...
 
virtual const Blockas_block () const
 Interprets this node to a node of type Block. More...
 
virtual BreakStatementas_break_statement ()
 Interprets this node to a node of type BreakStatement. More...
 
virtual const BreakStatementas_break_statement () const
 Interprets this node to a node of type BreakStatement. More...
 
virtual Bundleas_bundle ()
 Interprets this node to a node of type Bundle. More...
 
virtual const Bundleas_bundle () const
 Interprets this node to a node of type Bundle. More...
 
virtual BundleExtas_bundle_ext ()
 Interprets this node to a node of type BundleExt. More...
 
virtual const BundleExtas_bundle_ext () const
 Interprets this node to a node of type BundleExt. More...
 
virtual ContinueStatementas_continue_statement ()
 Interprets this node to a node of type ContinueStatement. More...
 
virtual const ContinueStatementas_continue_statement () const
 Interprets this node to a node of type ContinueStatement. More...
 
virtual ErrorModelas_error_model ()
 Interprets this node to a node of type ErrorModel. More...
 
virtual const ErrorModelas_error_model () const
 Interprets this node to a node of type ErrorModel. More...
 
virtual ForLoopas_for_loop ()
 Interprets this node to a node of type ForLoop. More...
 
virtual const ForLoopas_for_loop () const
 Interprets this node to a node of type ForLoop. More...
 
virtual ForeachLoopas_foreach_loop ()
 Interprets this node to a node of type ForeachLoop. More...
 
virtual const ForeachLoopas_foreach_loop () const
 Interprets this node to a node of type ForeachLoop. More...
 
virtual GotoInstructionas_goto_instruction ()
 Interprets this node to a node of type GotoInstruction. More...
 
virtual const GotoInstructionas_goto_instruction () const
 Interprets this node to a node of type GotoInstruction. More...
 
virtual IfElseas_if_else ()
 Interprets this node to a node of type IfElse. More...
 
virtual const IfElseas_if_else () const
 Interprets this node to a node of type IfElse. More...
 
virtual IfElseBranchas_if_else_branch ()
 Interprets this node to a node of type IfElseBranch. More...
 
virtual const IfElseBranchas_if_else_branch () const
 Interprets this node to a node of type IfElseBranch. More...
 
virtual Instructionas_instruction ()
 Interprets this node to a node of type Instruction. More...
 
virtual const Instructionas_instruction () const
 Interprets this node to a node of type Instruction. More...
 
virtual InstructionBaseas_instruction_base ()
 Interprets this node to a node of type InstructionBase. More...
 
virtual const InstructionBaseas_instruction_base () const
 Interprets this node to a node of type InstructionBase. More...
 
virtual Mappingas_mapping ()
 Interprets this node to a node of type Mapping. More...
 
virtual const Mappingas_mapping () const
 Interprets this node to a node of type Mapping. More...
 
virtual Programas_program ()
 Interprets this node to a node of type Program. More...
 
virtual const Programas_program () const
 Interprets this node to a node of type Program. More...
 
virtual RepeatUntilLoopas_repeat_until_loop ()
 Interprets this node to a node of type RepeatUntilLoop. More...
 
virtual const RepeatUntilLoopas_repeat_until_loop () const
 Interprets this node to a node of type RepeatUntilLoop. More...
 
virtual SetInstructionas_set_instruction ()
 Interprets this node to a node of type SetInstruction. More...
 
virtual const SetInstructionas_set_instruction () const
 Interprets this node to a node of type SetInstruction. More...
 
virtual Statementas_statement ()
 Interprets this node to a node of type Statement. More...
 
virtual const Statementas_statement () const
 Interprets this node to a node of type Statement. More...
 
virtual Structuredas_structured ()
 Interprets this node to a node of type Structured. More...
 
virtual const Structuredas_structured () const
 Interprets this node to a node of type Structured. More...
 
virtual Subcircuitas_subcircuit ()
 Interprets this node to a node of type Subcircuit. More...
 
virtual const Subcircuitas_subcircuit () const
 Interprets this node to a node of type Subcircuit. More...
 
virtual Variableas_variable ()
 Interprets this node to a node of type Variable. More...
 
virtual const Variableas_variable () const
 Interprets this node to a node of type Variable. More...
 
virtual Versionas_version ()
 Interprets this node to a node of type Version. More...
 
virtual const Versionas_version () const
 Interprets this node to a node of type Version. More...
 
virtual WhileLoopas_while_loop ()
 Interprets this node to a node of type WhileLoop. More...
 
virtual const WhileLoopas_while_loop () const
 Interprets this node to a node of type WhileLoop. More...
 
virtual void serialize (::tree::cbor::MapWriter &map, const ::tree::base::PointerMap &ids) const =0
 Serializes this node to the given map. More...
 

Static Public Member Functions

static std::shared_ptr< Nodedeserialize (const ::tree::cbor::MapReader &map, ::tree::base::IdentifierMap &ids)
 Deserializes the given node. More...
 

Protected Member Functions

virtual void visit_internal (VisitorBase &visitor, void *retval=nullptr)=0
 Internal helper method for visiter pattern. More...
 

Detailed Description

Main class for all nodes.

Definition at line 222 of file cqasm-v1-semantic-gen.hpp.

#include <cqasm-v1-semantic-gen.hpp>

Inheritance diagram for cqasm::v1::semantic::Node:
Inheritance graph
[legend]
Collaboration diagram for cqasm::v1::semantic::Node:
Collaboration graph
[legend]

Member Function Documentation

◆ type()

virtual NodeType cqasm::v1::semantic::Node::type ( ) const
pure virtual

◆ copy()

virtual One<Node> cqasm::v1::semantic::Node::copy ( ) const
pure virtual

◆ clone()

virtual One<Node> cqasm::v1::semantic::Node::clone ( ) const
pure virtual

◆ equals()

virtual bool cqasm::v1::semantic::Node::equals ( const Node rhs) const
pure virtual

◆ operator==()

virtual bool cqasm::v1::semantic::Node::operator== ( const Node rhs) const
pure virtual

◆ operator!=()

bool cqasm::v1::semantic::Node::operator!= ( const Node rhs) const
inline

Pointer-based inequality operator.

Definition at line 253 of file cqasm-v1-semantic-gen.hpp.

◆ visit_internal()

virtual void cqasm::v1::semantic::Node::visit_internal ( VisitorBase visitor,
void *  retval = nullptr 
)
protectedpure virtual

◆ visit()

template<typename T >
T cqasm::v1::semantic::Node::visit ( Visitor< T > &  visitor)

Visit this object.

Definition at line 3983 of file cqasm-v1-semantic-gen.hpp.

◆ dump()

void cqasm::v1::semantic::Node::dump ( std::ostream &  out = std::cout,
int  indent = 0 
)

Writes a debug dump of this node to the given stream.

Definition at line 15 of file cqasm-v1-semantic-gen.cpp.

◆ dump_seq()

void cqasm::v1::semantic::Node::dump_seq ( std::ostream &  out = std::cout,
int  indent = 0 
)

Alternate debug dump that represents links and node uniqueness via sequence number tags.

Definition at line 24 of file cqasm-v1-semantic-gen.cpp.

◆ as_annotated() [1/2]

Annotated * cqasm::v1::semantic::Node::as_annotated ( )
virtual

Interprets this node to a node of type Annotated.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Annotated.

Definition at line 37 of file cqasm-v1-semantic-gen.cpp.

◆ as_annotated() [2/2]

const Annotated * cqasm::v1::semantic::Node::as_annotated ( ) const
virtual

Interprets this node to a node of type Annotated.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Annotated.

Definition at line 45 of file cqasm-v1-semantic-gen.cpp.

◆ as_annotation_data() [1/2]

AnnotationData * cqasm::v1::semantic::Node::as_annotation_data ( )
virtual

Interprets this node to a node of type AnnotationData.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::AnnotationData.

Definition at line 53 of file cqasm-v1-semantic-gen.cpp.

◆ as_annotation_data() [2/2]

const AnnotationData * cqasm::v1::semantic::Node::as_annotation_data ( ) const
virtual

Interprets this node to a node of type AnnotationData.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::AnnotationData.

Definition at line 61 of file cqasm-v1-semantic-gen.cpp.

◆ as_block() [1/2]

Block * cqasm::v1::semantic::Node::as_block ( )
virtual

Interprets this node to a node of type Block.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Block.

Definition at line 69 of file cqasm-v1-semantic-gen.cpp.

◆ as_block() [2/2]

const Block * cqasm::v1::semantic::Node::as_block ( ) const
virtual

Interprets this node to a node of type Block.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Block.

Definition at line 77 of file cqasm-v1-semantic-gen.cpp.

◆ as_break_statement() [1/2]

BreakStatement * cqasm::v1::semantic::Node::as_break_statement ( )
virtual

Interprets this node to a node of type BreakStatement.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::BreakStatement.

Definition at line 85 of file cqasm-v1-semantic-gen.cpp.

◆ as_break_statement() [2/2]

const BreakStatement * cqasm::v1::semantic::Node::as_break_statement ( ) const
virtual

Interprets this node to a node of type BreakStatement.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::BreakStatement.

Definition at line 93 of file cqasm-v1-semantic-gen.cpp.

◆ as_bundle() [1/2]

Bundle * cqasm::v1::semantic::Node::as_bundle ( )
virtual

Interprets this node to a node of type Bundle.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Bundle.

Definition at line 101 of file cqasm-v1-semantic-gen.cpp.

◆ as_bundle() [2/2]

const Bundle * cqasm::v1::semantic::Node::as_bundle ( ) const
virtual

Interprets this node to a node of type Bundle.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Bundle.

Definition at line 109 of file cqasm-v1-semantic-gen.cpp.

◆ as_bundle_ext() [1/2]

BundleExt * cqasm::v1::semantic::Node::as_bundle_ext ( )
virtual

Interprets this node to a node of type BundleExt.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::BundleExt.

Definition at line 117 of file cqasm-v1-semantic-gen.cpp.

◆ as_bundle_ext() [2/2]

const BundleExt * cqasm::v1::semantic::Node::as_bundle_ext ( ) const
virtual

Interprets this node to a node of type BundleExt.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::BundleExt.

Definition at line 125 of file cqasm-v1-semantic-gen.cpp.

◆ as_continue_statement() [1/2]

ContinueStatement * cqasm::v1::semantic::Node::as_continue_statement ( )
virtual

Interprets this node to a node of type ContinueStatement.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::ContinueStatement.

Definition at line 133 of file cqasm-v1-semantic-gen.cpp.

◆ as_continue_statement() [2/2]

const ContinueStatement * cqasm::v1::semantic::Node::as_continue_statement ( ) const
virtual

Interprets this node to a node of type ContinueStatement.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::ContinueStatement.

Definition at line 141 of file cqasm-v1-semantic-gen.cpp.

◆ as_error_model() [1/2]

ErrorModel * cqasm::v1::semantic::Node::as_error_model ( )
virtual

Interprets this node to a node of type ErrorModel.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::ErrorModel.

Definition at line 149 of file cqasm-v1-semantic-gen.cpp.

◆ as_error_model() [2/2]

const ErrorModel * cqasm::v1::semantic::Node::as_error_model ( ) const
virtual

Interprets this node to a node of type ErrorModel.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::ErrorModel.

Definition at line 157 of file cqasm-v1-semantic-gen.cpp.

◆ as_for_loop() [1/2]

ForLoop * cqasm::v1::semantic::Node::as_for_loop ( )
virtual

Interprets this node to a node of type ForLoop.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::ForLoop.

Definition at line 165 of file cqasm-v1-semantic-gen.cpp.

◆ as_for_loop() [2/2]

const ForLoop * cqasm::v1::semantic::Node::as_for_loop ( ) const
virtual

Interprets this node to a node of type ForLoop.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::ForLoop.

Definition at line 173 of file cqasm-v1-semantic-gen.cpp.

◆ as_foreach_loop() [1/2]

ForeachLoop * cqasm::v1::semantic::Node::as_foreach_loop ( )
virtual

Interprets this node to a node of type ForeachLoop.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::ForeachLoop.

Definition at line 181 of file cqasm-v1-semantic-gen.cpp.

◆ as_foreach_loop() [2/2]

const ForeachLoop * cqasm::v1::semantic::Node::as_foreach_loop ( ) const
virtual

Interprets this node to a node of type ForeachLoop.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::ForeachLoop.

Definition at line 189 of file cqasm-v1-semantic-gen.cpp.

◆ as_goto_instruction() [1/2]

GotoInstruction * cqasm::v1::semantic::Node::as_goto_instruction ( )
virtual

Interprets this node to a node of type GotoInstruction.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::GotoInstruction.

Definition at line 197 of file cqasm-v1-semantic-gen.cpp.

◆ as_goto_instruction() [2/2]

const GotoInstruction * cqasm::v1::semantic::Node::as_goto_instruction ( ) const
virtual

Interprets this node to a node of type GotoInstruction.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::GotoInstruction.

Definition at line 205 of file cqasm-v1-semantic-gen.cpp.

◆ as_if_else() [1/2]

IfElse * cqasm::v1::semantic::Node::as_if_else ( )
virtual

Interprets this node to a node of type IfElse.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::IfElse.

Definition at line 213 of file cqasm-v1-semantic-gen.cpp.

◆ as_if_else() [2/2]

const IfElse * cqasm::v1::semantic::Node::as_if_else ( ) const
virtual

Interprets this node to a node of type IfElse.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::IfElse.

Definition at line 221 of file cqasm-v1-semantic-gen.cpp.

◆ as_if_else_branch() [1/2]

IfElseBranch * cqasm::v1::semantic::Node::as_if_else_branch ( )
virtual

Interprets this node to a node of type IfElseBranch.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::IfElseBranch.

Definition at line 229 of file cqasm-v1-semantic-gen.cpp.

◆ as_if_else_branch() [2/2]

const IfElseBranch * cqasm::v1::semantic::Node::as_if_else_branch ( ) const
virtual

Interprets this node to a node of type IfElseBranch.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::IfElseBranch.

Definition at line 237 of file cqasm-v1-semantic-gen.cpp.

◆ as_instruction() [1/2]

Instruction * cqasm::v1::semantic::Node::as_instruction ( )
virtual

Interprets this node to a node of type Instruction.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Instruction.

Definition at line 245 of file cqasm-v1-semantic-gen.cpp.

◆ as_instruction() [2/2]

const Instruction * cqasm::v1::semantic::Node::as_instruction ( ) const
virtual

Interprets this node to a node of type Instruction.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Instruction.

Definition at line 253 of file cqasm-v1-semantic-gen.cpp.

◆ as_instruction_base() [1/2]

InstructionBase * cqasm::v1::semantic::Node::as_instruction_base ( )
virtual

Interprets this node to a node of type InstructionBase.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::InstructionBase.

Definition at line 261 of file cqasm-v1-semantic-gen.cpp.

◆ as_instruction_base() [2/2]

const InstructionBase * cqasm::v1::semantic::Node::as_instruction_base ( ) const
virtual

Interprets this node to a node of type InstructionBase.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::InstructionBase.

Definition at line 269 of file cqasm-v1-semantic-gen.cpp.

◆ as_mapping() [1/2]

Mapping * cqasm::v1::semantic::Node::as_mapping ( )
virtual

Interprets this node to a node of type Mapping.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Mapping.

Definition at line 277 of file cqasm-v1-semantic-gen.cpp.

◆ as_mapping() [2/2]

const Mapping * cqasm::v1::semantic::Node::as_mapping ( ) const
virtual

Interprets this node to a node of type Mapping.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Mapping.

Definition at line 285 of file cqasm-v1-semantic-gen.cpp.

◆ as_program() [1/2]

Program * cqasm::v1::semantic::Node::as_program ( )
virtual

Interprets this node to a node of type Program.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Program.

Definition at line 293 of file cqasm-v1-semantic-gen.cpp.

◆ as_program() [2/2]

const Program * cqasm::v1::semantic::Node::as_program ( ) const
virtual

Interprets this node to a node of type Program.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Program.

Definition at line 301 of file cqasm-v1-semantic-gen.cpp.

◆ as_repeat_until_loop() [1/2]

RepeatUntilLoop * cqasm::v1::semantic::Node::as_repeat_until_loop ( )
virtual

Interprets this node to a node of type RepeatUntilLoop.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::RepeatUntilLoop.

Definition at line 309 of file cqasm-v1-semantic-gen.cpp.

◆ as_repeat_until_loop() [2/2]

const RepeatUntilLoop * cqasm::v1::semantic::Node::as_repeat_until_loop ( ) const
virtual

Interprets this node to a node of type RepeatUntilLoop.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::RepeatUntilLoop.

Definition at line 317 of file cqasm-v1-semantic-gen.cpp.

◆ as_set_instruction() [1/2]

SetInstruction * cqasm::v1::semantic::Node::as_set_instruction ( )
virtual

Interprets this node to a node of type SetInstruction.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::SetInstruction.

Definition at line 325 of file cqasm-v1-semantic-gen.cpp.

◆ as_set_instruction() [2/2]

const SetInstruction * cqasm::v1::semantic::Node::as_set_instruction ( ) const
virtual

Interprets this node to a node of type SetInstruction.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::SetInstruction.

Definition at line 333 of file cqasm-v1-semantic-gen.cpp.

◆ as_statement() [1/2]

Statement * cqasm::v1::semantic::Node::as_statement ( )
virtual

Interprets this node to a node of type Statement.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Statement.

Definition at line 341 of file cqasm-v1-semantic-gen.cpp.

◆ as_statement() [2/2]

const Statement * cqasm::v1::semantic::Node::as_statement ( ) const
virtual

Interprets this node to a node of type Statement.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Statement.

Definition at line 349 of file cqasm-v1-semantic-gen.cpp.

◆ as_structured() [1/2]

Structured * cqasm::v1::semantic::Node::as_structured ( )
virtual

Interprets this node to a node of type Structured.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Structured.

Definition at line 357 of file cqasm-v1-semantic-gen.cpp.

◆ as_structured() [2/2]

const Structured * cqasm::v1::semantic::Node::as_structured ( ) const
virtual

Interprets this node to a node of type Structured.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Structured.

Definition at line 365 of file cqasm-v1-semantic-gen.cpp.

◆ as_subcircuit() [1/2]

Subcircuit * cqasm::v1::semantic::Node::as_subcircuit ( )
virtual

Interprets this node to a node of type Subcircuit.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Subcircuit.

Definition at line 373 of file cqasm-v1-semantic-gen.cpp.

◆ as_subcircuit() [2/2]

const Subcircuit * cqasm::v1::semantic::Node::as_subcircuit ( ) const
virtual

Interprets this node to a node of type Subcircuit.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Subcircuit.

Definition at line 381 of file cqasm-v1-semantic-gen.cpp.

◆ as_variable() [1/2]

Variable * cqasm::v1::semantic::Node::as_variable ( )
virtual

Interprets this node to a node of type Variable.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Variable.

Definition at line 389 of file cqasm-v1-semantic-gen.cpp.

◆ as_variable() [2/2]

const Variable * cqasm::v1::semantic::Node::as_variable ( ) const
virtual

Interprets this node to a node of type Variable.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Variable.

Definition at line 397 of file cqasm-v1-semantic-gen.cpp.

◆ as_version() [1/2]

Version * cqasm::v1::semantic::Node::as_version ( )
virtual

Interprets this node to a node of type Version.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Version.

Definition at line 405 of file cqasm-v1-semantic-gen.cpp.

◆ as_version() [2/2]

const Version * cqasm::v1::semantic::Node::as_version ( ) const
virtual

Interprets this node to a node of type Version.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::Version.

Definition at line 413 of file cqasm-v1-semantic-gen.cpp.

◆ as_while_loop() [1/2]

WhileLoop * cqasm::v1::semantic::Node::as_while_loop ( )
virtual

Interprets this node to a node of type WhileLoop.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::WhileLoop.

Definition at line 421 of file cqasm-v1-semantic-gen.cpp.

◆ as_while_loop() [2/2]

const WhileLoop * cqasm::v1::semantic::Node::as_while_loop ( ) const
virtual

Interprets this node to a node of type WhileLoop.

Returns null if it has the wrong type.

Reimplemented in cqasm::v1::semantic::WhileLoop.

Definition at line 429 of file cqasm-v1-semantic-gen.cpp.

◆ serialize()

virtual void cqasm::v1::semantic::Node::serialize ( ::tree::cbor::MapWriter &  map,
const ::tree::base::PointerMap &  ids 
) const
pure virtual

◆ deserialize()

std::shared_ptr< Node > cqasm::v1::semantic::Node::deserialize ( const ::tree::cbor::MapReader &  map,
::tree::base::IdentifierMap &  ids 
)
static

Deserializes the given node.

Writes a debug dump of this node to the given stream.

Definition at line 436 of file cqasm-v1-semantic-gen.cpp.


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