public override IndexReference GetObjectSource(DeltinScript translateInfo, IWorkshopTree element) { if (TypeKind == TypeKind.Struct) { throw new NotImplementedException(); } return(translateInfo.SetupClasses().ClassArray.CreateChild((Element)element)); }
public override void WorkshopInit(DeltinScript translateInfo) { if (workshopInitialized) { return; } workshopInitialized = true; ClassData classData = translateInfo.SetupClasses(); Identifier = classData.AssignID(); int stackOffset = StackStart(false); Extends?.WorkshopInit(translateInfo); for (int i = 0; i < ObjectVariables.Count; i++) { ObjectVariables[i].SetArrayStore(classData.GetClassVariableStack(translateInfo.VarCollection, i + stackOffset)); } }