libqasm
library for handling cQASM files
Public Member Functions | Protected Member Functions | List of all members
cqasm::v1::semantic::Visitor< T > Class Template Referenceabstract

Base class for the visitor pattern for the tree. More...

Public Member Functions

virtual T visit_node (Node &node)=0
 Fallback function for nodes of any type. More...
 
virtual T visit_annotated (Annotated &node)
 Fallback function for Annotated nodes. More...
 
virtual T visit_annotation_data (AnnotationData &node)
 Visitor function for AnnotationData nodes. More...
 
virtual T visit_block (Block &node)
 Visitor function for Block nodes. More...
 
virtual T visit_break_statement (BreakStatement &node)
 Visitor function for BreakStatement nodes. More...
 
virtual T visit_bundle (Bundle &node)
 Visitor function for Bundle nodes. More...
 
virtual T visit_bundle_ext (BundleExt &node)
 Visitor function for BundleExt nodes. More...
 
virtual T visit_continue_statement (ContinueStatement &node)
 Visitor function for ContinueStatement nodes. More...
 
virtual T visit_error_model (ErrorModel &node)
 Visitor function for ErrorModel nodes. More...
 
virtual T visit_for_loop (ForLoop &node)
 Visitor function for ForLoop nodes. More...
 
virtual T visit_foreach_loop (ForeachLoop &node)
 Visitor function for ForeachLoop nodes. More...
 
virtual T visit_goto_instruction (GotoInstruction &node)
 Visitor function for GotoInstruction nodes. More...
 
virtual T visit_if_else (IfElse &node)
 Visitor function for IfElse nodes. More...
 
virtual T visit_if_else_branch (IfElseBranch &node)
 Visitor function for IfElseBranch nodes. More...
 
virtual T visit_instruction (Instruction &node)
 Visitor function for Instruction nodes. More...
 
virtual T visit_instruction_base (InstructionBase &node)
 Fallback function for InstructionBase nodes. More...
 
virtual T visit_mapping (Mapping &node)
 Visitor function for Mapping nodes. More...
 
virtual T visit_program (Program &node)
 Visitor function for Program nodes. More...
 
virtual T visit_repeat_until_loop (RepeatUntilLoop &node)
 Visitor function for RepeatUntilLoop nodes. More...
 
virtual T visit_set_instruction (SetInstruction &node)
 Visitor function for SetInstruction nodes. More...
 
virtual T visit_statement (Statement &node)
 Fallback function for Statement nodes. More...
 
virtual T visit_structured (Structured &node)
 Fallback function for Structured nodes. More...
 
virtual T visit_subcircuit (Subcircuit &node)
 Visitor function for Subcircuit nodes. More...
 
virtual T visit_variable (Variable &node)
 Visitor function for Variable nodes. More...
 
virtual T visit_version (Version &node)
 Visitor function for Version nodes. More...
 
virtual T visit_while_loop (WhileLoop &node)
 Visitor function for WhileLoop nodes. More...
 
- Public Member Functions inherited from cqasm::v1::semantic::VisitorBase
virtual ~VisitorBase ()=default
 Virtual destructor for proper cleanup. More...
 

Protected Member Functions

void raw_visit_node (Node &node, void *retval) override
 Internal visitor function for nodes of any type. More...
 
void raw_visit_annotated (Annotated &node, void *retval) override
 Internal visitor function for Annotated nodes. More...
 
void raw_visit_annotation_data (AnnotationData &node, void *retval) override
 Internal visitor function for AnnotationData nodes. More...
 
void raw_visit_block (Block &node, void *retval) override
 Internal visitor function for Block nodes. More...
 
void raw_visit_break_statement (BreakStatement &node, void *retval) override
 Internal visitor function for BreakStatement nodes. More...
 
void raw_visit_bundle (Bundle &node, void *retval) override
 Internal visitor function for Bundle nodes. More...
 
void raw_visit_bundle_ext (BundleExt &node, void *retval) override
 Internal visitor function for BundleExt nodes. More...
 
void raw_visit_continue_statement (ContinueStatement &node, void *retval) override
 Internal visitor function for ContinueStatement nodes. More...
 
void raw_visit_error_model (ErrorModel &node, void *retval) override
 Internal visitor function for ErrorModel nodes. More...
 
void raw_visit_for_loop (ForLoop &node, void *retval) override
 Internal visitor function for ForLoop nodes. More...
 
void raw_visit_foreach_loop (ForeachLoop &node, void *retval) override
 Internal visitor function for ForeachLoop nodes. More...
 
void raw_visit_goto_instruction (GotoInstruction &node, void *retval) override
 Internal visitor function for GotoInstruction nodes. More...
 
void raw_visit_if_else (IfElse &node, void *retval) override
 Internal visitor function for IfElse nodes. More...
 
void raw_visit_if_else_branch (IfElseBranch &node, void *retval) override
 Internal visitor function for IfElseBranch nodes. More...
 
void raw_visit_instruction (Instruction &node, void *retval) override
 Internal visitor function for Instruction nodes. More...
 
void raw_visit_instruction_base (InstructionBase &node, void *retval) override
 Internal visitor function for InstructionBase nodes. More...
 
void raw_visit_mapping (Mapping &node, void *retval) override
 Internal visitor function for Mapping nodes. More...
 
void raw_visit_program (Program &node, void *retval) override
 Internal visitor function for Program nodes. More...
 
void raw_visit_repeat_until_loop (RepeatUntilLoop &node, void *retval) override
 Internal visitor function for RepeatUntilLoop nodes. More...
 
void raw_visit_set_instruction (SetInstruction &node, void *retval) override
 Internal visitor function for SetInstruction nodes. More...
 
void raw_visit_statement (Statement &node, void *retval) override
 Internal visitor function for Statement nodes. More...
 
void raw_visit_structured (Structured &node, void *retval) override
 Internal visitor function for Structured nodes. More...
 
void raw_visit_subcircuit (Subcircuit &node, void *retval) override
 Internal visitor function for Subcircuit nodes. More...
 
void raw_visit_variable (Variable &node, void *retval) override
 Internal visitor function for Variable nodes. More...
 
void raw_visit_version (Version &node, void *retval) override
 Internal visitor function for Version nodes. More...
 
void raw_visit_while_loop (WhileLoop &node, void *retval) override
 Internal visitor function for WhileLoop nodes. More...
 
template<>
void raw_visit_node (Node &node, void *retval)
 Internal visitor function for nodes of any type. More...
 
template<>
void raw_visit_annotated (Annotated &node, void *retval)
 Internal visitor function for Annotated nodes. More...
 
template<>
void raw_visit_annotation_data (AnnotationData &node, void *retval)
 Internal visitor function for AnnotationData nodes. More...
 
template<>
void raw_visit_block (Block &node, void *retval)
 Internal visitor function for Block nodes. More...
 
template<>
void raw_visit_break_statement (BreakStatement &node, void *retval)
 Internal visitor function for BreakStatement nodes. More...
 
template<>
void raw_visit_bundle (Bundle &node, void *retval)
 Internal visitor function for Bundle nodes. More...
 
template<>
void raw_visit_bundle_ext (BundleExt &node, void *retval)
 Internal visitor function for BundleExt nodes. More...
 
template<>
void raw_visit_continue_statement (ContinueStatement &node, void *retval)
 Internal visitor function for ContinueStatement nodes. More...
 
template<>
void raw_visit_error_model (ErrorModel &node, void *retval)
 Internal visitor function for ErrorModel nodes. More...
 
template<>
void raw_visit_for_loop (ForLoop &node, void *retval)
 Internal visitor function for ForLoop nodes. More...
 
template<>
void raw_visit_foreach_loop (ForeachLoop &node, void *retval)
 Internal visitor function for ForeachLoop nodes. More...
 
template<>
void raw_visit_goto_instruction (GotoInstruction &node, void *retval)
 Internal visitor function for GotoInstruction nodes. More...
 
template<>
void raw_visit_if_else (IfElse &node, void *retval)
 Internal visitor function for IfElse nodes. More...
 
template<>
void raw_visit_if_else_branch (IfElseBranch &node, void *retval)
 Internal visitor function for IfElseBranch nodes. More...
 
template<>
void raw_visit_instruction (Instruction &node, void *retval)
 Internal visitor function for Instruction nodes. More...
 
template<>
void raw_visit_instruction_base (InstructionBase &node, void *retval)
 Internal visitor function for InstructionBase nodes. More...
 
template<>
void raw_visit_mapping (Mapping &node, void *retval)
 Internal visitor function for Mapping nodes. More...
 
template<>
void raw_visit_program (Program &node, void *retval)
 Internal visitor function for Program nodes. More...
 
template<>
void raw_visit_repeat_until_loop (RepeatUntilLoop &node, void *retval)
 Internal visitor function for RepeatUntilLoop nodes. More...
 
template<>
void raw_visit_set_instruction (SetInstruction &node, void *retval)
 Internal visitor function for SetInstruction nodes. More...
 
template<>
void raw_visit_statement (Statement &node, void *retval)
 Internal visitor function for Statement nodes. More...
 
template<>
void raw_visit_structured (Structured &node, void *retval)
 Internal visitor function for Structured nodes. More...
 
template<>
void raw_visit_subcircuit (Subcircuit &node, void *retval)
 Internal visitor function for Subcircuit nodes. More...
 
template<>
void raw_visit_variable (Variable &node, void *retval)
 Internal visitor function for Variable nodes. More...
 
template<>
void raw_visit_version (Version &node, void *retval)
 Internal visitor function for Version nodes. More...
 
template<>
void raw_visit_while_loop (WhileLoop &node, void *retval)
 Internal visitor function for WhileLoop nodes. More...
 
template<>
void raw_visit_node (Node &node, void *retval)
 Internal visitor function for nodes of any type. More...
 
template<>
void raw_visit_annotated (Annotated &node, void *retval)
 Internal visitor function for Annotated nodes. More...
 
template<>
void raw_visit_annotation_data (AnnotationData &node, void *retval)
 Internal visitor function for AnnotationData nodes. More...
 
template<>
void raw_visit_block (Block &node, void *retval)
 Internal visitor function for Block nodes. More...
 
template<>
void raw_visit_break_statement (BreakStatement &node, void *retval)
 Internal visitor function for BreakStatement nodes. More...
 
template<>
void raw_visit_bundle (Bundle &node, void *retval)
 Internal visitor function for Bundle nodes. More...
 
template<>
void raw_visit_bundle_ext (BundleExt &node, void *retval)
 Internal visitor function for BundleExt nodes. More...
 
template<>
void raw_visit_continue_statement (ContinueStatement &node, void *retval)
 Internal visitor function for ContinueStatement nodes. More...
 
template<>
void raw_visit_error_model (ErrorModel &node, void *retval)
 Internal visitor function for ErrorModel nodes. More...
 
template<>
void raw_visit_for_loop (ForLoop &node, void *retval)
 Internal visitor function for ForLoop nodes. More...
 
template<>
void raw_visit_foreach_loop (ForeachLoop &node, void *retval)
 Internal visitor function for ForeachLoop nodes. More...
 
template<>
void raw_visit_goto_instruction (GotoInstruction &node, void *retval)
 Internal visitor function for GotoInstruction nodes. More...
 
template<>
void raw_visit_if_else (IfElse &node, void *retval)
 Internal visitor function for IfElse nodes. More...
 
template<>
void raw_visit_if_else_branch (IfElseBranch &node, void *retval)
 Internal visitor function for IfElseBranch nodes. More...
 
template<>
void raw_visit_instruction (Instruction &node, void *retval)
 Internal visitor function for Instruction nodes. More...
 
template<>
void raw_visit_instruction_base (InstructionBase &node, void *retval)
 Internal visitor function for InstructionBase nodes. More...
 
template<>
void raw_visit_mapping (Mapping &node, void *retval)
 Internal visitor function for Mapping nodes. More...
 
template<>
void raw_visit_program (Program &node, void *retval)
 Internal visitor function for Program nodes. More...
 
template<>
void raw_visit_repeat_until_loop (RepeatUntilLoop &node, void *retval)
 Internal visitor function for RepeatUntilLoop nodes. More...
 
template<>
void raw_visit_set_instruction (SetInstruction &node, void *retval)
 Internal visitor function for SetInstruction nodes. More...
 
template<>
void raw_visit_statement (Statement &node, void *retval)
 Internal visitor function for Statement nodes. More...
 
template<>
void raw_visit_structured (Structured &node, void *retval)
 Internal visitor function for Structured nodes. More...
 
template<>
void raw_visit_subcircuit (Subcircuit &node, void *retval)
 Internal visitor function for Subcircuit nodes. More...
 
template<>
void raw_visit_variable (Variable &node, void *retval)
 Internal visitor function for Variable nodes. More...
 
template<>
void raw_visit_version (Version &node, void *retval)
 Internal visitor function for Version nodes. More...
 
template<>
void raw_visit_while_loop (WhileLoop &node, void *retval)
 Internal visitor function for WhileLoop nodes. More...
 

Detailed Description

template<typename T>
class cqasm::v1::semantic::Visitor< T >

Base class for the visitor pattern for the tree.

To operate on the tree, derive from this class, describe your operation by overriding the appropriate visit functions. and then call node->visit(your_visitor). The default implementations for the node-specific functions fall back to the more generic functions, eventually leading to visit_node(), which must be implemented with the desired behavior for unknown nodes.

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

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

Inheritance diagram for cqasm::v1::semantic::Visitor< T >:
Inheritance graph
[legend]
Collaboration diagram for cqasm::v1::semantic::Visitor< T >:
Collaboration graph
[legend]

Member Function Documentation

◆ raw_visit_node() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_node ( Node node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for nodes of any type.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_annotated() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_annotated ( Annotated node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Annotated nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_annotation_data() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_annotation_data ( AnnotationData node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for AnnotationData nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_block() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_block ( Block node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Block nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_break_statement() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_break_statement ( BreakStatement node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for BreakStatement nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_bundle() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_bundle ( Bundle node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Bundle nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_bundle_ext() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_bundle_ext ( BundleExt node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for BundleExt nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_continue_statement() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_continue_statement ( ContinueStatement node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for ContinueStatement nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_error_model() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_error_model ( ErrorModel node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for ErrorModel nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_for_loop() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_for_loop ( ForLoop node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for ForLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_foreach_loop() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_foreach_loop ( ForeachLoop node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for ForeachLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_goto_instruction() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_goto_instruction ( GotoInstruction node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for GotoInstruction nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_if_else() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_if_else ( IfElse node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for IfElse nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_if_else_branch() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_if_else_branch ( IfElseBranch node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for IfElseBranch nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_instruction() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_instruction ( Instruction node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Instruction nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_instruction_base() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_instruction_base ( InstructionBase node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for InstructionBase nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_mapping() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_mapping ( Mapping node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Mapping nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_program() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_program ( Program node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Program nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_repeat_until_loop() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_repeat_until_loop ( RepeatUntilLoop node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for RepeatUntilLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_set_instruction() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_set_instruction ( SetInstruction node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for SetInstruction nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_statement() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_statement ( Statement node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Statement nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_structured() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_structured ( Structured node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Structured nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_subcircuit() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_subcircuit ( Subcircuit node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Subcircuit nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_variable() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_variable ( Variable node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Variable nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_version() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_version ( Version node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for Version nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_while_loop() [1/3]

template<typename T >
void cqasm::v1::semantic::Visitor< T >::raw_visit_while_loop ( WhileLoop node,
void *  retval 
)
overrideprotectedvirtual

Internal visitor function for WhileLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ visit_node()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_node ( Node node)
pure virtual

Fallback function for nodes of any type.

◆ visit_annotated()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_annotated ( Annotated node)
inlinevirtual

Fallback function for Annotated nodes.

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

◆ visit_annotation_data()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_annotation_data ( AnnotationData node)
inlinevirtual

Visitor function for AnnotationData nodes.

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

◆ visit_block()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_block ( Block node)
inlinevirtual

Visitor function for Block nodes.

Reimplemented in cqasm::v1::semantic::Dumper, and cqasm::v1::semantic::RecursiveVisitor.

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

◆ visit_break_statement()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_break_statement ( BreakStatement node)
inlinevirtual

Visitor function for BreakStatement nodes.

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

◆ visit_bundle()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_bundle ( Bundle node)
inlinevirtual

Visitor function for Bundle nodes.

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

◆ visit_bundle_ext()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_bundle_ext ( BundleExt node)
inlinevirtual

Visitor function for BundleExt nodes.

Reimplemented in cqasm::v1::semantic::Dumper, and cqasm::v1::semantic::RecursiveVisitor.

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

◆ visit_continue_statement()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_continue_statement ( ContinueStatement node)
inlinevirtual

Visitor function for ContinueStatement nodes.

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

◆ visit_error_model()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_error_model ( ErrorModel node)
inlinevirtual

Visitor function for ErrorModel nodes.

Reimplemented in cqasm::v1::semantic::Dumper, and cqasm::v1::semantic::RecursiveVisitor.

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

◆ visit_for_loop()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_for_loop ( ForLoop node)
inlinevirtual

Visitor function for ForLoop nodes.

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

◆ visit_foreach_loop()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_foreach_loop ( ForeachLoop node)
inlinevirtual

Visitor function for ForeachLoop nodes.

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

◆ visit_goto_instruction()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_goto_instruction ( GotoInstruction node)
inlinevirtual

Visitor function for GotoInstruction nodes.

Reimplemented in cqasm::v1::semantic::Dumper, and cqasm::v1::semantic::RecursiveVisitor.

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

◆ visit_if_else()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_if_else ( IfElse node)
inlinevirtual

Visitor function for IfElse nodes.

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

◆ visit_if_else_branch()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_if_else_branch ( IfElseBranch node)
inlinevirtual

Visitor function for IfElseBranch nodes.

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

◆ visit_instruction()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_instruction ( Instruction node)
inlinevirtual

Visitor function for Instruction nodes.

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

◆ visit_instruction_base()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_instruction_base ( InstructionBase node)
inlinevirtual

Fallback function for InstructionBase nodes.

Reimplemented in cqasm::v1::semantic::Dumper, and cqasm::v1::semantic::RecursiveVisitor.

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

◆ visit_mapping()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_mapping ( Mapping node)
inlinevirtual

Visitor function for Mapping nodes.

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

◆ visit_program()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_program ( Program node)
inlinevirtual

Visitor function for Program nodes.

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

◆ visit_repeat_until_loop()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_repeat_until_loop ( RepeatUntilLoop node)
inlinevirtual

Visitor function for RepeatUntilLoop nodes.

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

◆ visit_set_instruction()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_set_instruction ( SetInstruction node)
inlinevirtual

Visitor function for SetInstruction nodes.

Reimplemented in cqasm::v1::semantic::Dumper, and cqasm::v1::semantic::RecursiveVisitor.

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

◆ visit_statement()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_statement ( Statement node)
inlinevirtual

Fallback function for Statement nodes.

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

◆ visit_structured()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_structured ( Structured node)
inlinevirtual

Fallback function for Structured nodes.

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

◆ visit_subcircuit()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_subcircuit ( Subcircuit node)
inlinevirtual

Visitor function for Subcircuit nodes.

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

◆ visit_variable()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_variable ( Variable node)
inlinevirtual

Visitor function for Variable nodes.

Reimplemented in cqasm::v1::semantic::Dumper, and cqasm::v1::semantic::RecursiveVisitor.

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

◆ visit_version()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_version ( Version node)
inlinevirtual

Visitor function for Version nodes.

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

◆ visit_while_loop()

template<typename T>
virtual T cqasm::v1::semantic::Visitor< T >::visit_while_loop ( WhileLoop node)
inlinevirtual

Visitor function for WhileLoop nodes.

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

◆ raw_visit_node() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_node ( Node node,
void *  retval 
)
protectedvirtual

Internal visitor function for nodes of any type.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_annotated() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_annotated ( Annotated node,
void *  retval 
)
protectedvirtual

Internal visitor function for Annotated nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_annotation_data() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_annotation_data ( AnnotationData node,
void *  retval 
)
protectedvirtual

Internal visitor function for AnnotationData nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_block() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_block ( Block node,
void *  retval 
)
protectedvirtual

Internal visitor function for Block nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_break_statement() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_break_statement ( BreakStatement node,
void *  retval 
)
protectedvirtual

Internal visitor function for BreakStatement nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_bundle() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_bundle ( Bundle node,
void *  retval 
)
protectedvirtual

Internal visitor function for Bundle nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_bundle_ext() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_bundle_ext ( BundleExt node,
void *  retval 
)
protectedvirtual

Internal visitor function for BundleExt nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_continue_statement() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_continue_statement ( ContinueStatement node,
void *  retval 
)
protectedvirtual

Internal visitor function for ContinueStatement nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_error_model() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_error_model ( ErrorModel node,
void *  retval 
)
protectedvirtual

Internal visitor function for ErrorModel nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_for_loop() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_for_loop ( ForLoop node,
void *  retval 
)
protectedvirtual

Internal visitor function for ForLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_foreach_loop() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_foreach_loop ( ForeachLoop node,
void *  retval 
)
protectedvirtual

Internal visitor function for ForeachLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_goto_instruction() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_goto_instruction ( GotoInstruction node,
void *  retval 
)
protectedvirtual

Internal visitor function for GotoInstruction nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_if_else() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_if_else ( IfElse node,
void *  retval 
)
protectedvirtual

Internal visitor function for IfElse nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_if_else_branch() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_if_else_branch ( IfElseBranch node,
void *  retval 
)
protectedvirtual

Internal visitor function for IfElseBranch nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_instruction() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_instruction ( Instruction node,
void *  retval 
)
protectedvirtual

Internal visitor function for Instruction nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_instruction_base() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_instruction_base ( InstructionBase node,
void *  retval 
)
protectedvirtual

Internal visitor function for InstructionBase nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_mapping() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_mapping ( Mapping node,
void *  retval 
)
protectedvirtual

Internal visitor function for Mapping nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_program() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_program ( Program node,
void *  retval 
)
protectedvirtual

Internal visitor function for Program nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_repeat_until_loop() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_repeat_until_loop ( RepeatUntilLoop node,
void *  retval 
)
protectedvirtual

Internal visitor function for RepeatUntilLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_set_instruction() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_set_instruction ( SetInstruction node,
void *  retval 
)
protectedvirtual

Internal visitor function for SetInstruction nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_statement() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_statement ( Statement node,
void *  retval 
)
protectedvirtual

Internal visitor function for Statement nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_structured() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_structured ( Structured node,
void *  retval 
)
protectedvirtual

Internal visitor function for Structured nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_subcircuit() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_subcircuit ( Subcircuit node,
void *  retval 
)
protectedvirtual

Internal visitor function for Subcircuit nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_variable() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_variable ( Variable node,
void *  retval 
)
protectedvirtual

Internal visitor function for Variable nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_version() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_version ( Version node,
void *  retval 
)
protectedvirtual

Internal visitor function for Version nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_while_loop() [2/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_while_loop ( WhileLoop node,
void *  retval 
)
protectedvirtual

Internal visitor function for WhileLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

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

◆ raw_visit_node() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_node ( Node node,
void *  retval 
)
protectedvirtual

Internal visitor function for nodes of any type.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_annotated() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_annotated ( Annotated node,
void *  retval 
)
protectedvirtual

Internal visitor function for Annotated nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_annotation_data() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_annotation_data ( AnnotationData node,
void *  retval 
)
protectedvirtual

Internal visitor function for AnnotationData nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_block() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_block ( Block node,
void *  retval 
)
protectedvirtual

Internal visitor function for Block nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_break_statement() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_break_statement ( BreakStatement node,
void *  retval 
)
protectedvirtual

Internal visitor function for BreakStatement nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_bundle() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_bundle ( Bundle node,
void *  retval 
)
protectedvirtual

Internal visitor function for Bundle nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_bundle_ext() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_bundle_ext ( BundleExt node,
void *  retval 
)
protectedvirtual

Internal visitor function for BundleExt nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_continue_statement() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_continue_statement ( ContinueStatement node,
void *  retval 
)
protectedvirtual

Internal visitor function for ContinueStatement nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_error_model() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_error_model ( ErrorModel node,
void *  retval 
)
protectedvirtual

Internal visitor function for ErrorModel nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_for_loop() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_for_loop ( ForLoop node,
void *  retval 
)
protectedvirtual

Internal visitor function for ForLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_foreach_loop() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_foreach_loop ( ForeachLoop node,
void *  retval 
)
protectedvirtual

Internal visitor function for ForeachLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_goto_instruction() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_goto_instruction ( GotoInstruction node,
void *  retval 
)
protectedvirtual

Internal visitor function for GotoInstruction nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_if_else() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_if_else ( IfElse node,
void *  retval 
)
protectedvirtual

Internal visitor function for IfElse nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_if_else_branch() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_if_else_branch ( IfElseBranch node,
void *  retval 
)
protectedvirtual

Internal visitor function for IfElseBranch nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_instruction() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_instruction ( Instruction node,
void *  retval 
)
protectedvirtual

Internal visitor function for Instruction nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_instruction_base() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_instruction_base ( InstructionBase node,
void *  retval 
)
protectedvirtual

Internal visitor function for InstructionBase nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_mapping() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_mapping ( Mapping node,
void *  retval 
)
protectedvirtual

Internal visitor function for Mapping nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_program() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_program ( Program node,
void *  retval 
)
protectedvirtual

Internal visitor function for Program nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_repeat_until_loop() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_repeat_until_loop ( RepeatUntilLoop node,
void *  retval 
)
protectedvirtual

Internal visitor function for RepeatUntilLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_set_instruction() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_set_instruction ( SetInstruction node,
void *  retval 
)
protectedvirtual

Internal visitor function for SetInstruction nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_statement() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_statement ( Statement node,
void *  retval 
)
protectedvirtual

Internal visitor function for Statement nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_structured() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_structured ( Structured node,
void *  retval 
)
protectedvirtual

Internal visitor function for Structured nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_subcircuit() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_subcircuit ( Subcircuit node,
void *  retval 
)
protectedvirtual

Internal visitor function for Subcircuit nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_variable() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_variable ( Variable node,
void *  retval 
)
protectedvirtual

Internal visitor function for Variable nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_version() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_version ( Version node,
void *  retval 
)
protectedvirtual

Internal visitor function for Version nodes.

Implements cqasm::v1::semantic::VisitorBase.

◆ raw_visit_while_loop() [3/3]

template<>
void cqasm::v1::semantic::Visitor< void >::raw_visit_while_loop ( WhileLoop node,
void *  retval 
)
protectedvirtual

Internal visitor function for WhileLoop nodes.

Implements cqasm::v1::semantic::VisitorBase.


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