1 // =================================
 2 // Copyright (c) 2020 Seppo Laakko
 3 // Distributed under the MIT license
 4 // =================================
 5 
 6 #ifndef SNGCPP_BINDER_EXPRESSION_BINDER_INCLUDED
 7 #define SNGCPP_BINDER_EXPRESSION_BINDER_INCLUDED
 8 #include <sngcpp/binder/BoundSourceFile.hpp>
 9 #include <sngcpp/symbols/SymbolTable.hpp>
10 #include <sngcpp/symbols/Scope.hpp>
11 #include <sngcpp/ast/Node.hpp>
12 
13 namespace sngcpp { namespace binder {
14 
15 class StatementBinder;
16 
17 std::vector<Symbol*> BindExpression(Node* nodeSymbolTable& symbolTableContainerScope* containerScopeconst std::std::vector<ContainerScope*>&prevContainerScopes
18     BoundSourceFile* boundSourceFileFunctionSymbol* currentFunctionStatementBinder* statementBinder);
19 
20 std::vector<Symbol*> BindExpression(Node* nodeSymbolTable& symbolTableContainerScope* containerScopeconst std::std::vector<ContainerScope*>&prevContainerScopes
21     BoundSourceFile* boundSourceFileFunctionSymbol* currentFunctionStatementBinder* statementBinderbool& subjectIsConst);
22 
23 } } // namespace sngcpp::binder
24 
25 #endif // SNGCPP_BINDER_EXPRESSION_BINDER_INCLUDED