libqasm
library for handling cQASM files
Public Member Functions | Protected Member Functions | Friends | List of all members
cqasm::v1::types::VisitorBase Class Referenceabstract

Internal class for implementing the visitor pattern. More...

Public Member Functions

virtual ~VisitorBase ()=default
 Virtual destructor for proper cleanup. More...
 

Protected Member Functions

virtual void raw_visit_node (Node &node, void *retval)=0
 Internal visitor function for nodes of any type. More...
 
virtual void raw_visit_axis (Axis &node, void *retval)=0
 Internal visitor function for Axis nodes. More...
 
virtual void raw_visit_bool (Bool &node, void *retval)=0
 Internal visitor function for Bool nodes. More...
 
virtual void raw_visit_complex (Complex &node, void *retval)=0
 Internal visitor function for Complex nodes. More...
 
virtual void raw_visit_complex_matrix (ComplexMatrix &node, void *retval)=0
 Internal visitor function for ComplexMatrix nodes. More...
 
virtual void raw_visit_int (Int &node, void *retval)=0
 Internal visitor function for Int nodes. More...
 
virtual void raw_visit_json (Json &node, void *retval)=0
 Internal visitor function for Json nodes. More...
 
virtual void raw_visit_qubit (Qubit &node, void *retval)=0
 Internal visitor function for Qubit nodes. More...
 
virtual void raw_visit_real (Real &node, void *retval)=0
 Internal visitor function for Real nodes. More...
 
virtual void raw_visit_real_matrix (RealMatrix &node, void *retval)=0
 Internal visitor function for RealMatrix nodes. More...
 
virtual void raw_visit_string (String &node, void *retval)=0
 Internal visitor function for String nodes. More...
 
virtual void raw_visit_type_base (TypeBase &node, void *retval)=0
 Internal visitor function for TypeBase nodes. More...
 

Friends

class Node
 
class Axis
 Axis primitive used within the semantic trees. More...
 
class Bool
 Boolean primitive used within the semantic trees. More...
 
class Complex
 Complex number primitive used within the semantic trees. More...
 
class ComplexMatrix
 
class Int
 Integer primitive used within the AST and semantic trees. More...
 
class Json
 
class Qubit
 
class Real
 Real number primitive used within the AST and semantic trees. More...
 
class RealMatrix
 
class String
 
class TypeBase
 

Detailed Description

Internal class for implementing the visitor pattern.

Definition at line 1204 of file cqasm-v1-types-gen.hpp.

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

Inheritance diagram for cqasm::v1::types::VisitorBase:
Inheritance graph
[legend]

Constructor & Destructor Documentation

◆ ~VisitorBase()

virtual cqasm::v1::types::VisitorBase::~VisitorBase ( )
virtualdefault

Virtual destructor for proper cleanup.

Member Function Documentation

◆ raw_visit_node()

virtual void cqasm::v1::types::VisitorBase::raw_visit_node ( Node node,
void *  retval 
)
protectedpure virtual

Internal visitor function for nodes of any type.

Implemented in cqasm::v1::types::Visitor< T >, cqasm::v1::types::Visitor< T >, and cqasm::v1::types::Visitor< T >.

◆ raw_visit_axis()

virtual void cqasm::v1::types::VisitorBase::raw_visit_axis ( Axis node,
void *  retval 
)
protectedpure virtual

◆ raw_visit_bool()

virtual void cqasm::v1::types::VisitorBase::raw_visit_bool ( Bool node,
void *  retval 
)
protectedpure virtual

◆ raw_visit_complex()

virtual void cqasm::v1::types::VisitorBase::raw_visit_complex ( Complex node,
void *  retval 
)
protectedpure virtual

◆ raw_visit_complex_matrix()

virtual void cqasm::v1::types::VisitorBase::raw_visit_complex_matrix ( ComplexMatrix node,
void *  retval 
)
protectedpure virtual

◆ raw_visit_int()

virtual void cqasm::v1::types::VisitorBase::raw_visit_int ( Int node,
void *  retval 
)
protectedpure virtual

◆ raw_visit_json()

virtual void cqasm::v1::types::VisitorBase::raw_visit_json ( Json node,
void *  retval 
)
protectedpure virtual

◆ raw_visit_qubit()

virtual void cqasm::v1::types::VisitorBase::raw_visit_qubit ( Qubit node,
void *  retval 
)
protectedpure virtual

◆ raw_visit_real()

virtual void cqasm::v1::types::VisitorBase::raw_visit_real ( Real node,
void *  retval 
)
protectedpure virtual

◆ raw_visit_real_matrix()

virtual void cqasm::v1::types::VisitorBase::raw_visit_real_matrix ( RealMatrix node,
void *  retval 
)
protectedpure virtual

◆ raw_visit_string()

virtual void cqasm::v1::types::VisitorBase::raw_visit_string ( String node,
void *  retval 
)
protectedpure virtual

◆ raw_visit_type_base()

virtual void cqasm::v1::types::VisitorBase::raw_visit_type_base ( TypeBase node,
void *  retval 
)
protectedpure virtual

Friends And Related Function Documentation

◆ Node

friend class Node
friend

Definition at line 1214 of file cqasm-v1-types-gen.hpp.

◆ Axis

friend class Axis
friend

Axis primitive used within the semantic trees.

Defaults to X.

Definition at line 1215 of file cqasm-v1-types-gen.hpp.

◆ Bool

friend class Bool
friend

Boolean primitive used within the semantic trees.

Defaults to false.

Definition at line 1216 of file cqasm-v1-types-gen.hpp.

◆ Complex

friend class Complex
friend

Complex number primitive used within the semantic trees.

Definition at line 1217 of file cqasm-v1-types-gen.hpp.

◆ ComplexMatrix

friend class ComplexMatrix
friend

Definition at line 1218 of file cqasm-v1-types-gen.hpp.

◆ Int

friend class Int
friend

Integer primitive used within the AST and semantic trees.

Definition at line 1219 of file cqasm-v1-types-gen.hpp.

◆ Json

friend class Json
friend

Definition at line 1220 of file cqasm-v1-types-gen.hpp.

◆ Qubit

friend class Qubit
friend

Definition at line 1221 of file cqasm-v1-types-gen.hpp.

◆ Real

friend class Real
friend

Real number primitive used within the AST and semantic trees.

Definition at line 1222 of file cqasm-v1-types-gen.hpp.

◆ RealMatrix

friend class RealMatrix
friend

Definition at line 1223 of file cqasm-v1-types-gen.hpp.

◆ String

friend class String
friend

Definition at line 1224 of file cqasm-v1-types-gen.hpp.

◆ TypeBase

friend class TypeBase
friend

Definition at line 1225 of file cqasm-v1-types-gen.hpp.


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