module volt.semantic.templatelifter
Code Map
module volt.semantic.templatelifter;
class TemplateLifter : Lifter
{
public:
currentTemplateDefinitionName: string;
currentInstanceType: ir.Type;
public:
this() { }
fn lift(old: ir.TopLevelBlock) ir.TopLevelBlock { }
fn lift(old: ir.Function) ir.Function { }
fn liftInPlace(old: ir.Function, f: ir.Function) { }
fn lift(old: ir.FunctionParam) ir.FunctionParam { }
fn lift(n: ir.Variable) ir.Variable { }
fn lift(old: ir.Import) ir.Import { }
fn lift(old: ir.Module) ir.Module { }
fn lift(old: ir.Aggregate) ir.Aggregate { }
fn lift(old: ir.Enum) ir.Enum { }
fn lift(en: ir.Enum, old: ir.EnumDeclaration) ir.EnumDeclaration { }
fn lift(old: ir.Alias) ir.Alias { }
fn lift(old: ir.Struct) ir.Struct { }
fn lift(old: ir.Union) ir.Union { }
fn lift(old: ir.Class) ir.Class { }
fn lift(old: ir._Interface) ir._Interface { }
fn liftedOrPanic(node: ir.Node, msg: string) ir.Node { }
fn copy(parent: ir.Scope, old: ir.BlockStatement) ir.BlockStatement { }
fn copy(old: ir.FunctionType) ir.FunctionType { }
fn copy(old: ir.TypeReference) ir.TypeReference { }
fn templateLift(_current: ir.Scope, lp: LanguagePass, ti: ir.TemplateInstance) { }
fn templateLiftFunction(_current: ir.Scope, lp: LanguagePass, ti: ir.TemplateInstance) { }
fn templateLiftAggregate(_current: ir.Scope, lp: LanguagePass, ti: ir.TemplateInstance) { }
}