@tripsnek/tmf
Version:
TypeScript Modeling Framework - A TypeScript port of the Eclipse Modeling Framework (EMF)
26 lines • 710 B
JavaScript
/**
* Source code generation for .ts file that implements an EEnum.
*
* @tripsnek
*/
export class TGeneratorEnum {
generate(eEnum) {
return `/**
* Source-gen code for ${eEnum.getName()} enumeration.
*/
export enum ${eEnum.getName()} {
${this.generateLiterals(eEnum)}}
`;
}
generateLiterals(eEnum) {
let result = ``;
for (let i = 0; i < eEnum.getELiterals().size(); i++) {
const literal = eEnum.getELiterals().get(i);
const name = literal.getName();
const value = `'${literal.getName()}'` || i;
result += ` ${name} = ${value},\n`;
}
return result;
}
}
//# sourceMappingURL=tgenerator-enum.js.map