UNPKG

@tripsnek/tmf

Version:

TypeScript Modeling Framework - A TypeScript port of the Eclipse Modeling Framework (EMF)

66 lines 2.33 kB
import { EList } from './api/elist.js'; import { EObject } from './api/eobject.js'; /** * Default implementation for all TMF Lists, and hence all * multi-valued fields. * * This implementation wraps around a simple Javascript Array. */ export declare class BasicEList<T> implements EList<T> { private owner; private eFeatureId; private inverseEFeatureID; private _elements; constructor(elems?: T[], owner?: EObject, featID?: number, inverseFeatID?: number); add(item: T, index?: number): void; fastContainmentAddHack(item: T): void; basicAdd(item: T, index?: number): void; private inverseAdd; remove(item?: T): void; basicRemove(item: T): boolean; private inverseRemove; containsAll(c: EList<any>): boolean; addAll(list: Iterable<T>): void; equals(o: Object): boolean; size(): number; isEmpty(): boolean; contains(o: T): boolean; get(index: number): T; set(index: number, element: T): T; /** * Indicate whether this list represents a containment relationship * between the list owningEObject and the list contents. */ private isContainment; indexOf(o: T): number; lastIndexOf(o: Object): number; removeAll(list: Iterable<T>): boolean; clear(): void; [Symbol.iterator](): Iterator<T>; /** * Indicates whether objects in the list have a feature which refers * back to this list's owningEObject. */ private hasInverseFeature; /** * Swaps the elements at the given positions, if they exist. * @param idx1 * @param idx2 */ swap(idx1: number, idx2: number): void; /** * Returns a new native TypeScript Array of the EList's elements */ elements(): T[]; filter(predicate: (value: T, index: number, obj: T[]) => boolean, thisArg?: any): EList<T>; forEach(callbackfn: (value: T, index: number, array: T[]) => void, thisArg?: any): void; find(predicate: (value: T, index: number, obj: T[]) => unknown, thisArg?: any): T | undefined; some(arg0: (e: any) => boolean): boolean; map(func: (value: T, index: number, obj: T[]) => any, thisArg?: any): EList<any>; last(): T | undefined; /** * Removes the last element of the List and returns it. */ pop(): T | undefined; } //# sourceMappingURL=basicelist.d.ts.map