BoundFunction(BoundCompileUnit* boundCompileUnit_, FunctionSymbol* functionSymbol_) |
BoundFunction(const BoundFunction&) delete |
void | Accept(BoundNodeVisitor& visitor) override |
void | AddLabeledStatement(BoundStatement* labeledStatement) |
void | AddTemporaryDestructorCall(std::unique_ptr<BoundFunctionCall>&& destructorCall, BoundFunction* currentFunction, ContainerScope* currentContainerScope, const Span& span, const boost::uuids::uuid& moduleId) |
BoundCompoundStatement* | Body() const |
const std::vector<std::unique_ptr<BoundStatement>>& | EnterCode() const |
const std::vector<std::unique_ptr<BoundStatement>>& | ExitCode() const |
BoundCompileUnit* | GetBoundCompileUnit() const |
const FunctionSymbol* | GetFunctionSymbol() const |
FunctionSymbol* | GetFunctionSymbol() |
BoundStatement* | GetLineCode() const |
bool | HasGotos() const |
const std::vector<BoundStatement*>& | LabeledStatements() const |
void | Load(Emitter& emitter, OperationFlags flags) override |
void | MoveTemporaryDestructorCallsTo(BoundExpression& expression) |
void | SetBody(std::unique_ptr<BoundCompoundStatement>&& body_) |
void | SetEnterCode(std::vector<std::unique_ptr<BoundStatement>>&& enterCode_) |
void | SetExitCode(std::vector<std::unique_ptr<BoundStatement>>&& exitCode_) |
void | SetHasGotos() |
void | SetLineCode(std::unique_ptr<BoundStatement>&& lineCode_) |
void | Store(Emitter& emitter, OperationFlags flags) override |
BoundFunction& | operator=(const BoundFunction&) delete |
std::unique_ptr<BoundCompoundStatement> | body |
BoundCompileUnit* | boundCompileUnit |
std::vector<std::unique_ptr<BoundStatement>> | enterCode |
std::vector<std::unique_ptr<BoundStatement>> | exitCode |
FunctionSymbol* | functionSymbol |
bool | hasGotos |
std::vector<BoundStatement*> | labeledStatements |
std::unique_ptr<BoundStatement> | lineCode |
std::vector<std::unique_ptr<LocalVariableSymbol>> | temporaries |
std::vector<std::unique_ptr<BoundFunctionCall>> | temporaryDestructorCalls |