sun::codegen::FunctionFrame

sun::codegen::FunctionFrame

struct · Source (opens in a new tab)

struct sun::codegen::FunctionFrame

The function body currently being emitted: its receiver, and what its return statements are allowed to do.

Nested emission (a method body inside a class definition, a lambda inside a function) saves and restores this through the guards on CodegenState rather than by hand.

Public Fields

canError

public · variable · Source (opens in a new tab)

bool sun::codegen::FunctionFrame::canError = false

No documentation comment.

currentClass

public · variable · Source (opens in a new tab)

std::shared_ptr<sun::types::ClassType> sun::codegen::FunctionFrame::currentClass = nullptr

No documentation comment.

Related: sun::types::ClassType

returnsRef

public · variable · Source (opens in a new tab)

bool sun::codegen::FunctionFrame::returnsRef = false

No documentation comment.

thisPtr

public · variable · Source (opens in a new tab)

llvm::Value* sun::codegen::FunctionFrame::thisPtr = nullptr

No documentation comment.

valueType

public · variable · Source (opens in a new tab)

llvm::Type* sun::codegen::FunctionFrame::valueType = nullptr

No documentation comment.