GSC Interpreter
A Turing-complete interpreter developed for a compiler course
Loading...
Searching...
No Matches
Interpreter Member List

This is the complete list of members for Interpreter, including all inherited members.

checkNumberOperands(const Token &op, N... operands)Interpreterprivate
environmentInterpreterprivate
evaluate(std::shared_ptr< Expr > expr)Interpreterprivate
execute(std::shared_ptr< Stmt > stmt)Interpreterprivate
executeBlock(const std::vector< std::shared_ptr< Stmt > > statements, std::shared_ptr< Environment > environment)Interpreterprivate
interpret(const std::vector< std::shared_ptr< Stmt > > &statements)Interpreter
isEqual(const std::any &a, const std::any &b) constInterpreterprivate
isTruthy(const std::any &value) constInterpreterprivate
stringify(const std::any &value) constInterpreterprivate
visitAssignExpr(std::shared_ptr< Assign > expr) overrideInterpreterprivatevirtual
visitBinaryExpr(std::shared_ptr< Binary > expr) overrideInterpreterprivatevirtual
visitBlockStmt(std::shared_ptr< Block > stmt) overrideInterpreterprivatevirtual
visitExpressionStmt(std::shared_ptr< Expression > stmt) overrideInterpreterprivatevirtual
visitGroupingExpr(std::shared_ptr< Grouping > expr) overrideInterpreterprivatevirtual
visitIfStmt(std::shared_ptr< If > stmt) overrideInterpreterprivatevirtual
visitLiteralExpr(std::shared_ptr< Literal > expr) overrideInterpreterprivatevirtual
visitLogicalExpr(std::shared_ptr< Logical > expr) overrideInterpreterprivatevirtual
visitPrintStmt(std::shared_ptr< Print > stmt) overrideInterpreterprivatevirtual
visitUnaryExpr(std::shared_ptr< Unary > expr) overrideInterpreterprivatevirtual
visitVariableExpr(std::shared_ptr< Variable > expr) overrideInterpreterprivatevirtual
visitVarStmt(std::shared_ptr< Var > stmt) overrideInterpreterprivatevirtual
visitWhileStmt(std::shared_ptr< While > stmt) overrideInterpreterprivatevirtual
~ExprVisitor()=defaultExprVisitorvirtual
~StmtVisitor()=defaultStmtVisitorvirtual