/// /// import { ArrayAggregateInitializerOutlet, ClassAggregateInitializerOutlet } from "../../../view/constructs/InitializerOutlet"; import { ConstructOutlet } from "../../../view/constructs/ConstructOutlet"; import { TranslationUnitContext } from "../../compilation/contexts"; import { ObjectEntity, ObjectEntityType, UnboundReferenceEntity } from "../../compilation/entities"; import { Simulation } from "../../runtime/Simulation"; import { CompiledTemporaryDeallocator } from "../TemporaryDeallocator"; import { AtomicType, BoundedArrayType, CompleteClassType, CompleteObjectType, ReferenceType } from "../../compilation/types"; import { RuntimeConstruct, SuccessfullyCompiled } from "../CPPConstruct"; import { InvalidConstruct } from "../InvalidConstruct"; import { CompiledExpression, Expression } from "../expressions/Expression"; import { ClassDirectInitializer, CompiledDirectInitializer, DirectInitializer, RuntimeDirectInitializer } from "./DirectInitializer"; import { Initializer, RuntimeInitializer } from "./Initializer"; import { CompiledValueInitializer, RuntimeValueInitializer, ValueInitializer } from "./ValueInitializer"; export declare abstract class ListInitializer extends Initializer { static create(context: TranslationUnitContext, target: UnboundReferenceEntity, args: readonly Expression[]): InvalidConstruct; static create(context: TranslationUnitContext, target: ObjectEntity, args: readonly Expression[]): InvalidConstruct; static create(context: TranslationUnitContext, target: ObjectEntity, args: readonly Expression[]): InvalidConstruct; static create(context: TranslationUnitContext, target: ObjectEntity, args: readonly Expression[]): ClassDirectInitializer; static create(context: TranslationUnitContext, target: ObjectEntity, args: readonly Expression[]): ClassDirectInitializer | InvalidConstruct; static create(context: TranslationUnitContext, target: ObjectEntity | UnboundReferenceEntity, args: readonly Expression[]): ClassDirectInitializer | InvalidConstruct; abstract readonly target: ObjectEntity | UnboundReferenceEntity; abstract readonly args: readonly Expression[]; constructor(context: TranslationUnitContext); abstract createRuntimeInitializer(this: CompiledListInitializer, parent: RuntimeConstruct): RuntimeListInitializer; } export interface CompiledListInitializer extends ListInitializer, SuccessfullyCompiled { readonly temporaryDeallocator?: CompiledTemporaryDeallocator; readonly target: ObjectEntity> | UnboundReferenceEntity>; readonly args: readonly CompiledExpression[]; } export declare abstract class RuntimeListInitializer = CompiledListInitializer> extends RuntimeInitializer { protected constructor(model: C, parent: RuntimeConstruct); } export declare class ArrayAggregateInitializer extends ListInitializer { readonly construct_type = "ArrayAggregateInitializer"; readonly kind = "list"; readonly target: ObjectEntity; readonly args: readonly Expression[]; readonly elemInitializers: readonly (DirectInitializer | ValueInitializer)[]; readonly explicitElemInitializers: readonly DirectInitializer[]; readonly implicitElemInitializers: readonly ValueInitializer[]; constructor(context: TranslationUnitContext, target: ObjectEntity, args: readonly Expression[]); createRuntimeInitializer(this: CompiledArrayAggregateInitializer, parent: RuntimeConstruct): RuntimeArrayAggregateInitializer; createRuntimeInitializer(this: CompiledListInitializer, parent: RuntimeConstruct): never; createDefaultOutlet(this: CompiledArrayAggregateInitializer, element: JQuery, parent?: ConstructOutlet): ArrayAggregateInitializerOutlet; explain(sim: Simulation, rtConstruct: RuntimeConstruct): { message: string; }; } export interface CompiledArrayAggregateInitializer extends ArrayAggregateInitializer, SuccessfullyCompiled { readonly temporaryDeallocator?: CompiledTemporaryDeallocator; readonly target: ObjectEntity>; readonly args: readonly CompiledExpression[]; readonly elemInitializers: readonly (CompiledDirectInitializer | CompiledValueInitializer)[]; readonly explicitElemInitializers: readonly CompiledDirectInitializer[]; readonly implicitElemInitializers: readonly CompiledValueInitializer[]; } export declare class RuntimeArrayAggregateInitializer extends RuntimeListInitializer> { private index; readonly elemInitializers: readonly (RuntimeDirectInitializer | RuntimeValueInitializer)[]; readonly explicitElemInitializers: readonly RuntimeDirectInitializer[]; readonly implicitElemInitializers: readonly RuntimeValueInitializer[]; constructor(model: CompiledArrayAggregateInitializer, parent: RuntimeConstruct); protected upNextImpl(): void; stepForwardImpl(): void; } export declare class ClassAggregateInitializer extends ListInitializer { readonly construct_type = "ClassAggregateInitializer"; readonly kind = "list"; readonly target: ObjectEntity; readonly args: readonly Expression[]; readonly memberInitializers: readonly (DirectInitializer | ValueInitializer)[]; readonly explicitMemberInitializers: readonly DirectInitializer[]; readonly implicitMemberInitializers: readonly ValueInitializer[]; constructor(context: TranslationUnitContext, target: ObjectEntity, args: readonly Expression[]); createRuntimeInitializer(this: CompiledClassAggregateInitializer, parent: RuntimeConstruct): RuntimeClassAggregateInitializer; createRuntimeInitializer(this: CompiledListInitializer, parent: RuntimeConstruct): never; createDefaultOutlet(this: CompiledClassAggregateInitializer, element: JQuery, parent?: ConstructOutlet): ClassAggregateInitializerOutlet; explain(sim: Simulation, rtConstruct: RuntimeConstruct): { message: string; }; } export interface CompiledClassAggregateInitializer extends ClassAggregateInitializer, SuccessfullyCompiled { readonly temporaryDeallocator?: CompiledTemporaryDeallocator; readonly target: ObjectEntity>; readonly args: readonly CompiledExpression[]; readonly memberInitializers: readonly (CompiledDirectInitializer | CompiledValueInitializer)[]; readonly explicitMemberInitializers: readonly CompiledDirectInitializer[]; readonly implicitMemberInitializers: readonly CompiledValueInitializer[]; } export declare class RuntimeClassAggregateInitializer extends RuntimeListInitializer> { private index; readonly memberInitializers: readonly (RuntimeDirectInitializer | RuntimeValueInitializer)[]; readonly explicitMemberInitializers: readonly RuntimeDirectInitializer[]; readonly implicitMemberInitializers: readonly RuntimeValueInitializer[]; constructor(model: CompiledClassAggregateInitializer, parent: RuntimeConstruct); protected upNextImpl(): void; stepForwardImpl(): void; }