@tripsnek/tmf
Version:
TypeScript Modeling Framework - A TypeScript port of the Eclipse Modeling Framework (EMF)
30 lines • 854 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TGeneratorEnum = void 0;
/**
* Source code generation for .ts file that implements an EEnum.
*
* @tripsnek
*/
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;
}
}
exports.TGeneratorEnum = TGeneratorEnum;
//# sourceMappingURL=tgenerator-enum.js.map