@microsoft/api-extractor
Version:
Validate, document, and review the exported API for a TypeScript library
29 lines • 1.34 kB
JavaScript
;
// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.
// See LICENSE in the project root for license information.
Object.defineProperty(exports, "__esModule", { value: true });
const AstItem_1 = require("./AstItem");
const AstItemContainer_1 = require("./AstItemContainer");
const AstEnumValue_1 = require("./AstEnumValue");
const TypeScriptHelpers_1 = require("../utils/TypeScriptHelpers");
/**
* This class is part of the AstItem abstract syntax tree. It represents a TypeScript enum definition.
* The individual enum values are represented using AstEnumValue.
*/
class AstEnum extends AstItemContainer_1.AstItemContainer {
constructor(options) {
super(options);
this.kind = AstItem_1.AstItemKind.Enum;
for (const memberDeclaration of options.declaration.members) {
const memberSymbol = TypeScriptHelpers_1.TypeScriptHelpers.getSymbolForDeclaration(memberDeclaration);
const memberOptions = {
context: this.context,
declaration: memberDeclaration,
declarationSymbol: memberSymbol
};
this.addMemberItem(new AstEnumValue_1.AstEnumValue(memberOptions));
}
}
}
exports.AstEnum = AstEnum;
//# sourceMappingURL=AstEnum.js.map