@tripsnek/tmf
Version:
TypeScript Modeling Framework - A TypeScript port of the Eclipse Modeling Framework (EMF)
76 lines • 1.94 kB
TypeScript
import { EPackage } from '../metamodel/api/epackage.js';
/**
* Writes EPackage metamodels to Ecore XML string format.
* This class handles the core writing logic without file system dependencies.
*/
export declare class EcoreStringWriter {
private indentLevel;
private indentString;
/**
* Converts an EPackage to Ecore XML string format.
* @param ePackage The root package to serialize
* @returns The XML string representation
*/
writeToString(ePackage: EPackage): string;
/**
* Builds the XML for a package.
*/
private buildPackageXml;
/**
* Builds the XML for a classifier (EClass, EEnum, or EDataType).
*/
private buildClassifierXml;
/**
* Builds the XML for an EClass.
*/
private buildClassXml;
/**
* Builds the XML for an EOperation.
*/
private buildOperationXml;
/**
* Builds the XML for an EParameter.
*/
private buildParameterXml;
/**
* Builds the XML for a structural feature (EAttribute or EReference).
*/
private buildFeatureXml;
/**
* Builds the XML for an EEnum.
*/
private buildEnumXml;
/**
* Builds the XML for an EEnumLiteral.
*/
private buildEnumLiteralXml;
/**
* Builds the XML for an EDataType.
*/
private buildDataTypeXml;
/**
* Gets a reference string for a classifier.
*/
private getClassifierReference;
/**
* Gets a reference string for a feature.
*/
private getFeatureReference;
/**
* Builds a reference path to a classifier.
*/
private buildReferencePath;
/**
* Gets the path to a package from root.
*/
private getPackagePath;
/**
* Escapes special XML characters.
*/
private escapeXml;
/**
* Gets the current indentation string.
*/
private getIndent;
}
//# sourceMappingURL=ecore-string-writer.d.ts.map