26 lines
773 B
C++
26 lines
773 B
C++
|
|
#ifndef PORYGONLANG_BINDER_HPP
|
|
#define PORYGONLANG_BINDER_HPP
|
|
#include "../Parser/ParsedStatements/ParsedStatement.hpp"
|
|
#include "BoundStatements/BoundStatement.hpp"
|
|
#include "../Script.hpp"
|
|
|
|
|
|
class Binder {
|
|
Script* ScriptData;
|
|
|
|
BoundStatement *BindStatement(ParsedStatement *statement);
|
|
BoundStatement *BindBlockStatement(ParsedStatement *statement);
|
|
BoundStatement *BindExpressionStatement(ParsedStatement *statement);
|
|
|
|
BoundExpression *BindExpression(ParsedExpression *expression);
|
|
BoundExpression *BindBinaryOperator(BinaryExpression *expression);
|
|
BoundExpression *BindUnaryOperator(UnaryExpression *expression);
|
|
public:
|
|
static BoundScriptStatement* Bind(Script* script, ParsedScriptStatement* s);
|
|
|
|
};
|
|
|
|
|
|
#endif //PORYGONLANG_BINDER_HPP
|