/// /// import { ArrayDefaultInitializerOutlet, AtomicDefaultInitializerOutlet, ClassDefaultInitializerOutlet } from "../../../view/constructs/InitializerOutlet"; import { ConstructOutlet } from "../../../view/constructs/ConstructOutlet"; import { TranslationUnitContext } from "../../compilation/contexts"; import { FunctionEntity, ObjectEntity, UnboundReferenceEntity } from "../../compilation/entities"; import { Simulation } from "../../runtime/Simulation"; import { CompiledTemporaryDeallocator } from "../TemporaryDeallocator"; import { AtomicType, BoundedArrayType, CompleteClassType, CompleteObjectType, FunctionType, VoidType } from "../../compilation/types"; import { RuntimeConstruct, SuccessfullyCompiled } from "../CPPConstruct"; import { CompiledFunctionCall, FunctionCall, RuntimeFunctionCall } from "../FunctionCall"; import { Initializer, RuntimeInitializer } from "./Initializer"; export declare abstract class DefaultInitializer extends Initializer { static create(context: TranslationUnitContext, target: UnboundReferenceEntity): ReferenceDefaultInitializer; static create(context: TranslationUnitContext, target: ObjectEntity): AtomicDefaultInitializer; static create(context: TranslationUnitContext, target: ObjectEntity): ArrayDefaultInitializer; static create(context: TranslationUnitContext, target: ObjectEntity): ClassDefaultInitializer; static create(context: TranslationUnitContext, target: ObjectEntity): AtomicDefaultInitializer | ArrayDefaultInitializer | ClassDefaultInitializer; static create(context: TranslationUnitContext, target: ObjectEntity | UnboundReferenceEntity): ReferenceDefaultInitializer | AtomicDefaultInitializer | ArrayDefaultInitializer | ClassDefaultInitializer; readonly kind = "default"; abstract createRuntimeInitializer(this: CompiledDefaultInitializer, parent: RuntimeConstruct): RuntimeDefaultInitializer; } export interface CompiledDefaultInitializer extends DefaultInitializer, SuccessfullyCompiled { readonly temporaryDeallocator?: CompiledTemporaryDeallocator; readonly target: ObjectEntity; } export declare abstract class RuntimeDefaultInitializer = CompiledDefaultInitializer> extends RuntimeInitializer { protected constructor(model: C, parent: RuntimeConstruct); } export declare class ReferenceDefaultInitializer extends DefaultInitializer { readonly construct_type = "ReferenceDefaultInitializer"; readonly target: UnboundReferenceEntity; constructor(context: TranslationUnitContext, target: UnboundReferenceEntity); createRuntimeInitializer(parent: RuntimeConstruct): never; createDefaultOutlet(element: JQuery, parent?: ConstructOutlet): never; explain(sim: Simulation, rtConstruct: RuntimeConstruct): { message: string; }; } export declare class AtomicDefaultInitializer extends DefaultInitializer { readonly construct_type = "AtomicDefaultInitializer"; readonly target: ObjectEntity; constructor(context: TranslationUnitContext, target: ObjectEntity); createRuntimeInitializer(this: CompiledAtomicDefaultInitializer, parent: RuntimeConstruct): RuntimeAtomicDefaultInitializer; createRuntimeInitializer(this: CompiledDefaultInitializer, parent: RuntimeConstruct): never; createDefaultOutlet(this: CompiledAtomicDefaultInitializer, element: JQuery, parent?: ConstructOutlet): AtomicDefaultInitializerOutlet; explain(sim: Simulation, rtConstruct: RuntimeConstruct): { message: string; }; } export interface CompiledAtomicDefaultInitializer extends AtomicDefaultInitializer, SuccessfullyCompiled { readonly temporaryDeallocator?: CompiledTemporaryDeallocator; readonly target: ObjectEntity; } export declare class RuntimeAtomicDefaultInitializer extends RuntimeDefaultInitializer> { constructor(model: CompiledAtomicDefaultInitializer, parent: RuntimeConstruct); protected upNextImpl(): void; stepForwardImpl(): void; } export declare class ArrayDefaultInitializer extends DefaultInitializer { readonly construct_type = "ArrayDefaultInitializer"; readonly target: ObjectEntity; readonly elementInitializers?: DefaultInitializer[]; constructor(context: TranslationUnitContext, target: ObjectEntity); createRuntimeInitializer(this: CompiledArrayDefaultInitializer, parent: RuntimeConstruct): RuntimeArrayDefaultInitializer; createRuntimeInitializer(this: CompiledDefaultInitializer, parent: RuntimeConstruct): never; createDefaultOutlet(this: CompiledArrayDefaultInitializer, element: JQuery, parent?: ConstructOutlet): ArrayDefaultInitializerOutlet; explain(sim: Simulation, rtConstruct: RuntimeConstruct): { message: string; }; } export interface CompiledArrayDefaultInitializer extends ArrayDefaultInitializer, SuccessfullyCompiled { readonly temporaryDeallocator?: CompiledTemporaryDeallocator; readonly target: ObjectEntity; readonly elementInitializers?: CompiledDefaultInitializer[]; } export declare class RuntimeArrayDefaultInitializer extends RuntimeDefaultInitializer> { readonly elementInitializers?: RuntimeDefaultInitializer[]; private index; constructor(model: CompiledArrayDefaultInitializer, parent: RuntimeConstruct); protected upNextImpl(): void; stepForwardImpl(): void; } export declare class ClassDefaultInitializer extends DefaultInitializer { readonly construct_type = "ClassDefaultInitializer"; readonly target: ObjectEntity; readonly ctor?: FunctionEntity>; readonly ctorCall?: FunctionCall; constructor(context: TranslationUnitContext, target: ObjectEntity); createRuntimeInitializer(this: CompiledClassDefaultInitializer, parent: RuntimeConstruct): RuntimeClassDefaultInitializer; createRuntimeInitializer(this: CompiledDefaultInitializer, parent: RuntimeConstruct): never; createDefaultOutlet(this: CompiledClassDefaultInitializer, element: JQuery, parent?: ConstructOutlet): ClassDefaultInitializerOutlet; explain(sim: Simulation, rtConstruct: RuntimeConstruct): { message: string; }; } export interface CompiledClassDefaultInitializer extends ClassDefaultInitializer, SuccessfullyCompiled { readonly temporaryDeallocator?: CompiledTemporaryDeallocator; readonly target: ObjectEntity; readonly ctor: FunctionEntity>; readonly ctorCall: CompiledFunctionCall>; } export declare class RuntimeClassDefaultInitializer extends RuntimeDefaultInitializer> { readonly ctorCall: RuntimeFunctionCall>; private index; constructor(model: CompiledClassDefaultInitializer, parent: RuntimeConstruct); protected upNextImpl(): void; stepForwardImpl(): void; }