UNPKG

@tripsnek/tmf

Version:

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

35 lines 4.26 kB
import { EStructuralFeatureImpl } from './estructural-feature-impl.js'; export class EReferenceImpl extends EStructuralFeatureImpl { // private eRefType!: EClass; eOpposite; containment = false; constructor(name, eContainingClass, eReferenceType) { super(name, eReferenceType); // if (eReferenceType) this.eRefType = eReferenceType; if (eContainingClass) this.setEContainingClass(eContainingClass); } // public getEReferenceType(): EClass { // return this.eRefType; // } isContainer() { return this.getEOpposite() !== undefined && this.getEOpposite().isContainment(); } isContainment() { return this.containment; } setContainment(containment) { this.containment = containment; } // public isResolveProxies(): boolean { // return false; // } // public setResolveProxies(value: boolean): void {} getEOpposite() { return this.eOpposite; } setEOpposite(value) { this.eOpposite = value; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJlZmVyZW5jZS1pbXBsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9tZXRhbW9kZWwvaW1wbC9lcmVmZXJlbmNlLWltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFdkUsTUFBTSxPQUFPLGNBQ1gsU0FBUSxzQkFBc0I7SUFHOUIsNkJBQTZCO0lBQ3JCLFNBQVMsQ0FBYztJQUN2QixXQUFXLEdBQVksS0FBSyxDQUFDO0lBQ3JDLFlBQ0UsSUFBYSxFQUNiLGdCQUF5QixFQUN6QixjQUF1QjtRQUV2QixLQUFLLENBQUMsSUFBSSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQzVCLHNEQUFzRDtRQUN0RCxJQUFJLGdCQUFnQjtZQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCx1Q0FBdUM7SUFDdkMsMEJBQTBCO0lBQzFCLElBQUk7SUFFRyxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDbkYsQ0FBQztJQUVlLGFBQWE7UUFDM0IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFTSxjQUFjLENBQUMsV0FBb0I7UUFDeEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVELHVDQUF1QztJQUN2QyxrQkFBa0I7SUFDbEIsSUFBSTtJQUVKLG9EQUFvRDtJQUU3QyxZQUFZO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRU0sWUFBWSxDQUFDLEtBQWlCO1FBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVDbGFzcyB9IGZyb20gJy4uL2FwaS9lY2xhc3MuanMnO1xyXG5pbXBvcnQgeyBFUmVmZXJlbmNlIH0gZnJvbSAnLi4vYXBpL2VyZWZlcmVuY2UuanMnO1xyXG5pbXBvcnQgeyBFU3RydWN0dXJhbEZlYXR1cmVJbXBsIH0gZnJvbSAnLi9lc3RydWN0dXJhbC1mZWF0dXJlLWltcGwuanMnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEVSZWZlcmVuY2VJbXBsXHJcbiAgZXh0ZW5kcyBFU3RydWN0dXJhbEZlYXR1cmVJbXBsXHJcbiAgaW1wbGVtZW50cyBFUmVmZXJlbmNlXHJcbntcclxuICAvLyBwcml2YXRlIGVSZWZUeXBlITogRUNsYXNzO1xyXG4gIHByaXZhdGUgZU9wcG9zaXRlITogRVJlZmVyZW5jZTtcclxuICBwcml2YXRlIGNvbnRhaW5tZW50OiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxyXG4gICAgbmFtZT86IHN0cmluZyxcclxuICAgIGVDb250YWluaW5nQ2xhc3M/OiBFQ2xhc3MsXHJcbiAgICBlUmVmZXJlbmNlVHlwZT86IEVDbGFzc1xyXG4gICkge1xyXG4gICAgc3VwZXIobmFtZSwgZVJlZmVyZW5jZVR5cGUpO1xyXG4gICAgLy8gaWYgKGVSZWZlcmVuY2VUeXBlKSB0aGlzLmVSZWZUeXBlID0gZVJlZmVyZW5jZVR5cGU7XHJcbiAgICBpZiAoZUNvbnRhaW5pbmdDbGFzcykgdGhpcy5zZXRFQ29udGFpbmluZ0NsYXNzKGVDb250YWluaW5nQ2xhc3MpO1xyXG4gIH1cclxuXHJcbiAgLy8gcHVibGljIGdldEVSZWZlcmVuY2VUeXBlKCk6IEVDbGFzcyB7XHJcbiAgLy8gICByZXR1cm4gdGhpcy5lUmVmVHlwZTtcclxuICAvLyB9XHJcblxyXG4gIHB1YmxpYyBpc0NvbnRhaW5lcigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmdldEVPcHBvc2l0ZSgpICE9PSB1bmRlZmluZWQgJiYgdGhpcy5nZXRFT3Bwb3NpdGUoKSEuaXNDb250YWlubWVudCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG92ZXJyaWRlIGlzQ29udGFpbm1lbnQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250YWlubWVudDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRDb250YWlubWVudChjb250YWlubWVudDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5jb250YWlubWVudCA9IGNvbnRhaW5tZW50O1xyXG4gIH1cclxuXHJcbiAgLy8gcHVibGljIGlzUmVzb2x2ZVByb3hpZXMoKTogYm9vbGVhbiB7XHJcbiAgLy8gICByZXR1cm4gZmFsc2U7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBwdWJsaWMgc2V0UmVzb2x2ZVByb3hpZXModmFsdWU6IGJvb2xlYW4pOiB2b2lkIHt9XHJcblxyXG4gIHB1YmxpYyBnZXRFT3Bwb3NpdGUoKTogRVJlZmVyZW5jZSB8IHVuZGVmaW5lZCB7XHJcbiAgICByZXR1cm4gdGhpcy5lT3Bwb3NpdGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RU9wcG9zaXRlKHZhbHVlOiBFUmVmZXJlbmNlKTogdm9pZCB7XHJcbiAgICB0aGlzLmVPcHBvc2l0ZSA9IHZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=