@tripsnek/tmf
Version:
TypeScript Modeling Framework - A TypeScript port of the Eclipse Modeling Framework (EMF)
33 lines • 1.22 kB
TypeScript
import { EPackage } from '../metamodel/api/epackage.js';
/**
* Responsible for generating the interface and implementation of an
* EPackage source file, which provides static access to all the elements
* of a package in a TMF model.
*
* Note that generation of several swathes of the package content
* are ganged together into a single pass over the model. This owes
* to the fact that sufficient logic is shared across their computations, largely
* related to the tracking of IDs for individual elements, that it would
* be difficult to separate them out.
*/
export declare class TGeneratorPackage {
rootPackage: EPackage;
generatePackageContents(pkg: EPackage): string;
/**
* User for generating 'get' on the EType for a feature or operation.
*
* @param etype
* @param owningEClass
* @param pkgToImport
* @param pkg
* @returns
*/
private getterForEType;
private generateImports;
/**
* Sort eclassifiers in such a way that base types are guaranteed to precede derived types so
* that we can reference feature IDs in correct order
*/
private sortClassifiersWithBaseTypesFirst;
}
//# sourceMappingURL=tgenerator-package.d.ts.map