Spaces:
Sleeping
Sleeping
| ; | |
| // 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 }); | |
| exports.DocMemberReference = void 0; | |
| const DocNode_1 = require("./DocNode"); | |
| const DocExcerpt_1 = require("./DocExcerpt"); | |
| /** | |
| * A {@link DocDeclarationReference | declaration reference} includes a chain of | |
| * member references represented using `DocMemberReference` nodes. | |
| * | |
| * @remarks | |
| * For example, `example-library#ui.controls.Button.(render:static)` is a | |
| * declaration reference that contains three member references: | |
| * `ui`, `.controls`, and `.Button`, and `.(render:static)`. | |
| */ | |
| class DocMemberReference extends DocNode_1.DocNode { | |
| /** | |
| * Don't call this directly. Instead use {@link TSDocParser} | |
| * @internal | |
| */ | |
| constructor(parameters) { | |
| super(parameters); | |
| if (DocNode_1.DocNode.isParsedParameters(parameters)) { | |
| this._hasDot = !!parameters.dotExcerpt; | |
| if (parameters.dotExcerpt) { | |
| this._dotExcerpt = new DocExcerpt_1.DocExcerpt({ | |
| configuration: this.configuration, | |
| excerptKind: DocExcerpt_1.ExcerptKind.MemberReference_Dot, | |
| content: parameters.dotExcerpt | |
| }); | |
| } | |
| if (parameters.spacingAfterDotExcerpt) { | |
| this._spacingAfterDotExcerpt = new DocExcerpt_1.DocExcerpt({ | |
| configuration: this.configuration, | |
| excerptKind: DocExcerpt_1.ExcerptKind.Spacing, | |
| content: parameters.spacingAfterDotExcerpt | |
| }); | |
| } | |
| if (parameters.leftParenthesisExcerpt) { | |
| this._leftParenthesisExcerpt = new DocExcerpt_1.DocExcerpt({ | |
| configuration: this.configuration, | |
| excerptKind: DocExcerpt_1.ExcerptKind.MemberReference_LeftParenthesis, | |
| content: parameters.leftParenthesisExcerpt | |
| }); | |
| } | |
| if (parameters.spacingAfterLeftParenthesisExcerpt) { | |
| this._spacingAfterLeftParenthesisExcerpt = new DocExcerpt_1.DocExcerpt({ | |
| configuration: this.configuration, | |
| excerptKind: DocExcerpt_1.ExcerptKind.Spacing, | |
| content: parameters.spacingAfterLeftParenthesisExcerpt | |
| }); | |
| } | |
| if (parameters.spacingAfterMemberExcerpt) { | |
| this._spacingAfterMemberExcerpt = new DocExcerpt_1.DocExcerpt({ | |
| configuration: this.configuration, | |
| excerptKind: DocExcerpt_1.ExcerptKind.Spacing, | |
| content: parameters.spacingAfterMemberExcerpt | |
| }); | |
| } | |
| if (parameters.colonExcerpt) { | |
| this._colonExcerpt = new DocExcerpt_1.DocExcerpt({ | |
| excerptKind: DocExcerpt_1.ExcerptKind.MemberReference_Colon, | |
| configuration: this.configuration, | |
| content: parameters.colonExcerpt | |
| }); | |
| } | |
| if (parameters.spacingAfterColonExcerpt) { | |
| this._spacingAfterColonExcerpt = new DocExcerpt_1.DocExcerpt({ | |
| configuration: this.configuration, | |
| excerptKind: DocExcerpt_1.ExcerptKind.Spacing, | |
| content: parameters.spacingAfterColonExcerpt | |
| }); | |
| } | |
| if (parameters.spacingAfterSelectorExcerpt) { | |
| this._spacingAfterSelectorExcerpt = new DocExcerpt_1.DocExcerpt({ | |
| configuration: this.configuration, | |
| excerptKind: DocExcerpt_1.ExcerptKind.Spacing, | |
| content: parameters.spacingAfterSelectorExcerpt | |
| }); | |
| } | |
| if (parameters.rightParenthesisExcerpt) { | |
| this._rightParenthesisExcerpt = new DocExcerpt_1.DocExcerpt({ | |
| configuration: this.configuration, | |
| excerptKind: DocExcerpt_1.ExcerptKind.MemberReference_RightParenthesis, | |
| content: parameters.rightParenthesisExcerpt | |
| }); | |
| } | |
| if (parameters.spacingAfterRightParenthesisExcerpt) { | |
| this._spacingAfterRightParenthesisExcerpt = new DocExcerpt_1.DocExcerpt({ | |
| configuration: this.configuration, | |
| excerptKind: DocExcerpt_1.ExcerptKind.Spacing, | |
| content: parameters.spacingAfterRightParenthesisExcerpt | |
| }); | |
| } | |
| } | |
| else { | |
| this._hasDot = parameters.hasDot; | |
| } | |
| this._memberIdentifier = parameters.memberIdentifier; | |
| this._memberSymbol = parameters.memberSymbol; | |
| this._selector = parameters.selector; | |
| } | |
| /** @override */ | |
| get kind() { | |
| return DocNode_1.DocNodeKind.MemberReference; | |
| } | |
| /** | |
| * True if this member reference is preceded by a dot (".") token. | |
| * It should be false only for the first member in the chain. | |
| */ | |
| get hasDot() { | |
| return this._hasDot; | |
| } | |
| /** | |
| * The identifier for the referenced member. | |
| * @remarks | |
| * Either `memberIdentifier` or `memberSymbol` may be specified, but not both. | |
| */ | |
| get memberIdentifier() { | |
| return this._memberIdentifier; | |
| } | |
| /** | |
| * The ECMAScript 6 symbol expression, which may be used instead of an identifier | |
| * to indicate the referenced member. | |
| * @remarks | |
| * Either `memberIdentifier` or `memberSymbol` may be specified, but not both. | |
| */ | |
| get memberSymbol() { | |
| return this._memberSymbol; | |
| } | |
| /** | |
| * A TSDoc selector, which may be optionally when the identifier or symbol is insufficient | |
| * to unambiguously determine the referenced declaration. | |
| */ | |
| get selector() { | |
| return this._selector; | |
| } | |
| /** @override */ | |
| onGetChildNodes() { | |
| return [ | |
| this._dotExcerpt, | |
| this._spacingAfterDotExcerpt, | |
| this._leftParenthesisExcerpt, | |
| this._spacingAfterLeftParenthesisExcerpt, | |
| this._memberIdentifier, | |
| this._memberSymbol, | |
| this._spacingAfterMemberExcerpt, | |
| this._colonExcerpt, | |
| this._spacingAfterColonExcerpt, | |
| this._selector, | |
| this._spacingAfterSelectorExcerpt, | |
| this._rightParenthesisExcerpt, | |
| this._spacingAfterRightParenthesisExcerpt | |
| ]; | |
| } | |
| } | |
| exports.DocMemberReference = DocMemberReference; | |
| //# sourceMappingURL=DocMemberReference.js.map |