GSC Interpreter
A Turing-complete interpreter developed for a compiler course
Loading...
Searching...
No Matches
StmtVisitor Class Referenceabstract

Abstract base class for statement visitors. More...

#include <stmt.hpp>

Inheritance diagram for StmtVisitor:
Collaboration diagram for StmtVisitor:

Public Member Functions

virtual std::any visitBlockStmt (std::shared_ptr< Block > stmt)=0
 
virtual std::any visitExpressionStmt (std::shared_ptr< Expression > expr)=0
 
virtual std::any visitPrintStmt (std::shared_ptr< Print > stmt)=0
 
virtual std::any visitVarStmt (std::shared_ptr< Var > stmt)=0
 
virtual std::any visitIfStmt (std::shared_ptr< If > stmt)=0
 
virtual std::any visitWhileStmt (std::shared_ptr< While > stmt)=0
 
virtual ~StmtVisitor ()=default
 

Detailed Description

Abstract base class for statement visitors.

Note
This class defines the interface for visiting different types of statements into the GSC interpreter.

Definition at line 21 of file stmt.hpp.

Constructor & Destructor Documentation

◆ ~StmtVisitor()

virtual StmtVisitor::~StmtVisitor ( )
virtualdefault

Member Function Documentation

◆ visitBlockStmt()

virtual std::any StmtVisitor::visitBlockStmt ( std::shared_ptr< Block stmt)
pure virtual

Implemented in Interpreter.

◆ visitExpressionStmt()

virtual std::any StmtVisitor::visitExpressionStmt ( std::shared_ptr< Expression expr)
pure virtual

Implemented in Interpreter.

◆ visitIfStmt()

virtual std::any StmtVisitor::visitIfStmt ( std::shared_ptr< If stmt)
pure virtual

Implemented in Interpreter.

◆ visitPrintStmt()

virtual std::any StmtVisitor::visitPrintStmt ( std::shared_ptr< Print stmt)
pure virtual

Implemented in Interpreter.

◆ visitVarStmt()

virtual std::any StmtVisitor::visitVarStmt ( std::shared_ptr< Var stmt)
pure virtual

Implemented in Interpreter.

◆ visitWhileStmt()

virtual std::any StmtVisitor::visitWhileStmt ( std::shared_ptr< While stmt)
pure virtual

Implemented in Interpreter.


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