brighterscript 1.0.0-alpha.48 → 1.0.0-alpha.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/README.md +7 -10
  2. package/bsconfig.schema.json +34 -7
  3. package/dist/AstValidationSegmenter.js +12 -0
  4. package/dist/AstValidationSegmenter.js.map +1 -1
  5. package/dist/BsConfig.d.ts +6 -35
  6. package/dist/CrossScopeValidator.d.ts +1 -0
  7. package/dist/CrossScopeValidator.js +28 -4
  8. package/dist/CrossScopeValidator.js.map +1 -1
  9. package/dist/DiagnosticMessages.d.ts +1 -1
  10. package/dist/DiagnosticMessages.js +20 -6
  11. package/dist/DiagnosticMessages.js.map +1 -1
  12. package/dist/LanguageServer.d.ts +3 -1
  13. package/dist/LanguageServer.js +32 -19
  14. package/dist/LanguageServer.js.map +1 -1
  15. package/dist/Program.d.ts +9 -3
  16. package/dist/Program.js +111 -74
  17. package/dist/Program.js.map +1 -1
  18. package/dist/ProgramBuilder.d.ts +0 -2
  19. package/dist/ProgramBuilder.js +10 -28
  20. package/dist/ProgramBuilder.js.map +1 -1
  21. package/dist/SymbolTable.js +3 -2
  22. package/dist/SymbolTable.js.map +1 -1
  23. package/dist/astUtils/reflection.d.ts +14 -2
  24. package/dist/astUtils/reflection.js +70 -18
  25. package/dist/astUtils/reflection.js.map +1 -1
  26. package/dist/astUtils/visitors.d.ts +2 -1
  27. package/dist/astUtils/visitors.js.map +1 -1
  28. package/dist/bscPlugin/CallExpressionInfo.js +9 -3
  29. package/dist/bscPlugin/CallExpressionInfo.js.map +1 -1
  30. package/dist/bscPlugin/completions/CompletionsProcessor.js +3 -0
  31. package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -1
  32. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +34 -1
  33. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +1 -1
  34. package/dist/bscPlugin/hover/HoverProcessor.spec.js +31 -0
  35. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -1
  36. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +3 -0
  37. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
  38. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.d.ts +5 -0
  39. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js +71 -3
  40. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +1 -1
  41. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js +7 -7
  42. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js.map +1 -1
  43. package/dist/bscPlugin/validation/BrsFileValidator.js +10 -2
  44. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  45. package/dist/bscPlugin/validation/BrsFileValidator.spec.js +99 -0
  46. package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +1 -1
  47. package/dist/bscPlugin/validation/ScopeValidator.d.ts +1 -0
  48. package/dist/bscPlugin/validation/ScopeValidator.js +19 -4
  49. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
  50. package/dist/bscPlugin/validation/ScopeValidator.spec.js +334 -0
  51. package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +1 -1
  52. package/dist/cli.js +11 -18
  53. package/dist/cli.js.map +1 -1
  54. package/dist/files/BrsFile.Class.spec.js +336 -200
  55. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  56. package/dist/files/BrsFile.spec.js +61 -10
  57. package/dist/files/BrsFile.spec.js.map +1 -1
  58. package/dist/files/XmlFile.d.ts +7 -0
  59. package/dist/files/XmlFile.js +36 -0
  60. package/dist/files/XmlFile.js.map +1 -1
  61. package/dist/files/XmlFile.spec.js +7 -9
  62. package/dist/files/XmlFile.spec.js.map +1 -1
  63. package/dist/files/tests/imports.spec.js +3 -3
  64. package/dist/files/tests/imports.spec.js.map +1 -1
  65. package/dist/files/tests/optionalChaning.spec.js +1 -1
  66. package/dist/files/tests/optionalChaning.spec.js.map +1 -1
  67. package/dist/interfaces.d.ts +12 -4
  68. package/dist/interfaces.js.map +1 -1
  69. package/dist/lexer/Lexer.spec.js +12 -2
  70. package/dist/lexer/Lexer.spec.js.map +1 -1
  71. package/dist/lexer/TokenKind.js +6 -3
  72. package/dist/lexer/TokenKind.js.map +1 -1
  73. package/dist/lsp/Project.js +1 -3
  74. package/dist/lsp/Project.js.map +1 -1
  75. package/dist/lsp/Project.spec.js +1 -1
  76. package/dist/lsp/Project.spec.js.map +1 -1
  77. package/dist/lsp/ProjectManager.d.ts +8 -0
  78. package/dist/lsp/ProjectManager.js +7 -5
  79. package/dist/lsp/ProjectManager.js.map +1 -1
  80. package/dist/lsp/ProjectManager.spec.js +128 -0
  81. package/dist/lsp/ProjectManager.spec.js.map +1 -1
  82. package/dist/lsp/worker/WorkerThreadProject.js +21 -16
  83. package/dist/lsp/worker/WorkerThreadProject.js.map +1 -1
  84. package/dist/lsp/worker/run.d.ts +1 -0
  85. package/dist/lsp/worker/run.js +14 -0
  86. package/dist/lsp/worker/run.js.map +1 -0
  87. package/dist/parser/AstNode.d.ts +8 -1
  88. package/dist/parser/AstNode.js +9 -0
  89. package/dist/parser/AstNode.js.map +1 -1
  90. package/dist/parser/AstNode.spec.js +1 -1
  91. package/dist/parser/AstNode.spec.js.map +1 -1
  92. package/dist/parser/Expression.d.ts +43 -0
  93. package/dist/parser/Expression.js +120 -7
  94. package/dist/parser/Expression.js.map +1 -1
  95. package/dist/parser/Parser.Class.spec.js +25 -0
  96. package/dist/parser/Parser.Class.spec.js.map +1 -1
  97. package/dist/parser/Parser.d.ts +4 -0
  98. package/dist/parser/Parser.js +117 -7
  99. package/dist/parser/Parser.js.map +1 -1
  100. package/dist/parser/Parser.spec.js +200 -1
  101. package/dist/parser/Parser.spec.js.map +1 -1
  102. package/dist/parser/Statement.d.ts +32 -1
  103. package/dist/parser/Statement.js +126 -62
  104. package/dist/parser/Statement.js.map +1 -1
  105. package/dist/parser/tests/statement/ConstStatement.spec.js +238 -0
  106. package/dist/parser/tests/statement/ConstStatement.spec.js.map +1 -1
  107. package/dist/roku-types/data.json +422 -64
  108. package/dist/roku-types/index.d.ts +50 -0
  109. package/dist/types/ArrayType.js +3 -0
  110. package/dist/types/ArrayType.js.map +1 -1
  111. package/dist/types/BscType.d.ts +4 -3
  112. package/dist/types/BscType.js +2 -4
  113. package/dist/types/BscType.js.map +1 -1
  114. package/dist/types/BscTypeKind.d.ts +2 -0
  115. package/dist/types/BscTypeKind.js +2 -0
  116. package/dist/types/BscTypeKind.js.map +1 -1
  117. package/dist/types/CallFuncableType.d.ts +24 -0
  118. package/dist/types/CallFuncableType.js +91 -0
  119. package/dist/types/CallFuncableType.js.map +1 -0
  120. package/dist/types/ComponentType.d.ts +3 -15
  121. package/dist/types/ComponentType.js +2 -56
  122. package/dist/types/ComponentType.js.map +1 -1
  123. package/dist/types/DoubleType.js +1 -1
  124. package/dist/types/DoubleType.js.map +1 -1
  125. package/dist/types/FloatType.js +1 -1
  126. package/dist/types/FloatType.js.map +1 -1
  127. package/dist/types/InlineInterfaceType.d.ts +5 -0
  128. package/dist/types/InlineInterfaceType.js +17 -0
  129. package/dist/types/InlineInterfaceType.js.map +1 -0
  130. package/dist/types/IntegerType.js +1 -1
  131. package/dist/types/IntegerType.js.map +1 -1
  132. package/dist/types/InterfaceType.d.ts +2 -2
  133. package/dist/types/InterfaceType.js +5 -4
  134. package/dist/types/InterfaceType.js.map +1 -1
  135. package/dist/types/LongIntegerType.js +1 -1
  136. package/dist/types/LongIntegerType.js.map +1 -1
  137. package/dist/types/ObjectType.d.ts +1 -0
  138. package/dist/types/ObjectType.js +3 -0
  139. package/dist/types/ObjectType.js.map +1 -1
  140. package/dist/types/ReferenceType.d.ts +3 -1
  141. package/dist/types/ReferenceType.js +41 -2
  142. package/dist/types/ReferenceType.js.map +1 -1
  143. package/dist/types/TypeStatementType.d.ts +18 -0
  144. package/dist/types/TypeStatementType.js +45 -0
  145. package/dist/types/TypeStatementType.js.map +1 -0
  146. package/dist/types/roFunctionType.d.ts +11 -0
  147. package/dist/types/roFunctionType.js +37 -0
  148. package/dist/types/roFunctionType.js.map +1 -0
  149. package/dist/types/roFunctionType.spec.d.ts +1 -0
  150. package/dist/types/roFunctionType.spec.js +20 -0
  151. package/dist/types/roFunctionType.spec.js.map +1 -0
  152. package/dist/util.d.ts +3 -94
  153. package/dist/util.js +53 -303
  154. package/dist/util.js.map +1 -1
  155. package/dist/validators/ClassValidator.js +1 -1
  156. package/dist/validators/ClassValidator.js.map +1 -1
  157. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"AstNode.spec.js","sourceRoot":"","sources":["../../src/parser/AstNode.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AstNode.spec.js","sourceRoot":"","sources":["../../src/parser/AstNode.spec.ts"],"names":[],"mappings":"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"}
@@ -144,6 +144,7 @@ export declare class DottedGetExpression extends Expression {
144
144
  readonly kind = AstNodeKind.DottedGetExpression;
145
145
  readonly location: Location | undefined;
146
146
  transpile(state: BrsTranspileState): (string | SourceNode | TranspileResult)[];
147
+ getTypedef(state: BrsTranspileState): (string | SourceNode | TranspileResult)[];
147
148
  walk(visitor: WalkVisitor, options: WalkOptions): void;
148
149
  getType(options: GetTypeOptions): BscType;
149
150
  getName(parseMode: ParseMode): string;
@@ -364,6 +365,7 @@ export declare class VariableExpression extends Expression {
364
365
  readonly location: Location;
365
366
  getName(parseMode?: ParseMode): string;
366
367
  transpile(state: BrsTranspileState): TranspileResult;
368
+ getTypedef(state: BrsTranspileState): TranspileResult[];
367
369
  walk(visitor: WalkVisitor, options: WalkOptions): void;
368
370
  getType(options: GetTypeOptions): BscType;
369
371
  get leadingTrivia(): Token[];
@@ -638,4 +640,45 @@ export declare class TypedArrayExpression extends Expression {
638
640
  getType(options: GetTypeOptions): BscType;
639
641
  clone(): TypedArrayExpression;
640
642
  }
643
+ export declare class InlineInterfaceExpression extends Expression {
644
+ constructor(options: {
645
+ open?: Token;
646
+ members: InlineInterfaceMemberExpression[];
647
+ close?: Token;
648
+ });
649
+ readonly tokens: {
650
+ readonly open?: Token;
651
+ readonly close?: Token;
652
+ };
653
+ readonly members: InlineInterfaceMemberExpression[];
654
+ readonly kind = AstNodeKind.InlineInterfaceExpression;
655
+ readonly location: Location;
656
+ get leadingTrivia(): Token[];
657
+ transpile(state: BrsTranspileState): TranspileResult;
658
+ walk(visitor: WalkVisitor, options: WalkOptions): void;
659
+ getType(options: GetTypeOptions): BscType;
660
+ clone(): InlineInterfaceExpression;
661
+ }
662
+ export declare class InlineInterfaceMemberExpression extends Expression {
663
+ constructor(options: {
664
+ optional?: Token;
665
+ name: Token;
666
+ as?: Token;
667
+ typeExpression?: TypeExpression;
668
+ });
669
+ readonly kind = AstNodeKind.InlineInterfaceMemberExpression;
670
+ readonly tokens: {
671
+ readonly optional?: Token;
672
+ readonly name: Token;
673
+ readonly as?: Token;
674
+ };
675
+ readonly typeExpression?: TypeExpression;
676
+ readonly location: Location;
677
+ get leadingTrivia(): Token[];
678
+ transpile(state: BrsTranspileState): TranspileResult;
679
+ walk(visitor: WalkVisitor, options: WalkOptions): void;
680
+ getType(options: GetTypeOptions): BscType;
681
+ get isOptional(): boolean;
682
+ clone(): InlineInterfaceMemberExpression;
683
+ }
641
684
  export {};
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TypedArrayExpression = exports.TypecastExpression = exports.TypeExpression = exports.RegexLiteralExpression = exports.NullCoalescingExpression = exports.TernaryExpression = exports.AnnotationExpression = exports.TaggedTemplateStringExpression = exports.TemplateStringExpression = exports.TemplateStringQuasiExpression = exports.CallfuncExpression = exports.NewExpression = exports.SourceLiteralExpression = exports.VariableExpression = exports.UnaryExpression = exports.AALiteralExpression = exports.AAMemberExpression = exports.ArrayLiteralExpression = exports.EscapedCharCodeLiteralExpression = exports.PrintSeparatorExpression = exports.LiteralExpression = exports.GroupingExpression = exports.IndexedGetExpression = exports.XmlAttributeGetExpression = exports.DottedGetExpression = exports.FunctionParameterExpression = exports.FunctionExpression = exports.CallExpression = exports.BinaryExpression = void 0;
3
+ exports.InlineInterfaceMemberExpression = exports.InlineInterfaceExpression = exports.TypedArrayExpression = exports.TypecastExpression = exports.TypeExpression = exports.RegexLiteralExpression = exports.NullCoalescingExpression = exports.TernaryExpression = exports.AnnotationExpression = exports.TaggedTemplateStringExpression = exports.TemplateStringExpression = exports.TemplateStringQuasiExpression = exports.CallfuncExpression = exports.NewExpression = exports.SourceLiteralExpression = exports.VariableExpression = exports.UnaryExpression = exports.AALiteralExpression = exports.AAMemberExpression = exports.ArrayLiteralExpression = exports.EscapedCharCodeLiteralExpression = exports.PrintSeparatorExpression = exports.LiteralExpression = exports.GroupingExpression = exports.IndexedGetExpression = exports.XmlAttributeGetExpression = exports.DottedGetExpression = exports.FunctionParameterExpression = exports.FunctionExpression = exports.CallExpression = exports.BinaryExpression = void 0;
4
4
  const TokenKind_1 = require("../lexer/TokenKind");
5
5
  const util_1 = require("../util");
6
6
  const Parser_1 = require("./Parser");
@@ -24,6 +24,7 @@ const InvalidType_1 = require("../types/InvalidType");
24
24
  const UninitializedType_1 = require("../types/UninitializedType");
25
25
  const FunctionType_1 = require("../types/FunctionType");
26
26
  const BrightScriptDocParser_1 = require("./BrightScriptDocParser");
27
+ const InlineInterfaceType_1 = require("../types/InlineInterfaceType");
27
28
  class BinaryExpression extends AstNode_1.Expression {
28
29
  constructor(options) {
29
30
  super();
@@ -390,7 +391,7 @@ class FunctionParameterExpression extends AstNode_1.Expression {
390
391
  this.typeExpression = options.typeExpression;
391
392
  }
392
393
  getType(options) {
393
- var _a, _b, _c, _d, _e;
394
+ var _a, _b, _c, _d, _e, _f, _g;
394
395
  const docs = BrightScriptDocParser_1.brsDocParser.parseNode(this.findAncestor(reflection_1.isFunctionStatement));
395
396
  const paramName = this.tokens.name.text;
396
397
  let paramTypeFromCode = (_b = (_a = this.typeExpression) === null || _a === void 0 ? void 0 : _a.getType(Object.assign(Object.assign({}, options), { flags: 2 /* SymbolTypeFlag.typetime */, typeChain: undefined }))) !== null && _b !== void 0 ? _b : util_1.default.getDefaultTypeFromValueType((_c = this.defaultValue) === null || _c === void 0 ? void 0 : _c.getType(Object.assign(Object.assign({}, options), { flags: 1 /* SymbolTypeFlag.runtime */, typeChain: undefined })));
@@ -398,8 +399,13 @@ class FunctionParameterExpression extends AstNode_1.Expression {
398
399
  paramTypeFromCode = undefined;
399
400
  }
400
401
  const paramTypeFromDoc = docs.getParamBscType(paramName, Object.assign(Object.assign({}, options), { fullName: paramName, typeChain: undefined, tableProvider: () => this.getSymbolTable() }));
401
- let paramType = (_d = util_1.default.chooseTypeFromCodeOrDocComment(paramTypeFromCode, paramTypeFromDoc, options)) !== null && _d !== void 0 ? _d : DynamicType_1.DynamicType.instance;
402
- (_e = options.typeChain) === null || _e === void 0 ? void 0 : _e.push(new interfaces_1.TypeChainEntry({ name: paramName, type: paramType, data: options.data, astNode: this }));
402
+ const paramType = (_d = util_1.default.chooseTypeFromCodeOrDocComment(paramTypeFromCode, paramTypeFromDoc, options)) !== null && _d !== void 0 ? _d : DynamicType_1.DynamicType.instance;
403
+ const docDescription = (_e = docs.getParam(paramName)) === null || _e === void 0 ? void 0 : _e.description;
404
+ if (docDescription) {
405
+ options.data = (_f = options.data) !== null && _f !== void 0 ? _f : {};
406
+ options.data.description = docDescription;
407
+ }
408
+ (_g = options.typeChain) === null || _g === void 0 ? void 0 : _g.push(new interfaces_1.TypeChainEntry({ name: paramName, type: paramType, data: options.data, astNode: this }));
403
409
  return paramType;
404
410
  }
405
411
  get location() {
@@ -426,17 +432,17 @@ class FunctionParameterExpression extends AstNode_1.Expression {
426
432
  return result;
427
433
  }
428
434
  getTypedef(state) {
429
- var _a, _b;
435
+ var _a, _b, _c;
430
436
  const results = [this.tokens.name.text];
431
437
  if (this.defaultValue) {
432
- results.push(' = ', ...this.defaultValue.transpile(state));
438
+ results.push(' = ', ...((_a = this.defaultValue.getTypedef(state)) !== null && _a !== void 0 ? _a : this.defaultValue.transpile(state)));
433
439
  }
434
440
  if (this.tokens.as) {
435
441
  results.push(' as ');
436
442
  // TODO: Is this conditional needed? Will typeToken always exist
437
443
  // so long as `asToken` exists?
438
444
  if (this.typeExpression) {
439
- results.push(...((_b = (_a = this.typeExpression) === null || _a === void 0 ? void 0 : _a.getTypedef(state)) !== null && _b !== void 0 ? _b : ['']));
445
+ results.push(...((_c = (_b = this.typeExpression) === null || _b === void 0 ? void 0 : _b.getTypedef(state)) !== null && _c !== void 0 ? _c : ['']));
440
446
  }
441
447
  }
442
448
  return results;
@@ -490,6 +496,14 @@ class DottedGetExpression extends AstNode_1.Expression {
490
496
  ];
491
497
  }
492
498
  }
499
+ getTypedef(state) {
500
+ //always transpile the dots for typedefs
501
+ return [
502
+ ...this.obj.transpile(state),
503
+ state.transpileToken(this.tokens.dot),
504
+ state.transpileToken(this.tokens.name)
505
+ ];
506
+ }
493
507
  walk(visitor, options) {
494
508
  if (options.walkMode & visitors_2.InternalWalkMode.walkExpressions) {
495
509
  (0, visitors_2.walk)(this, 'obj', visitor, options);
@@ -1046,6 +1060,11 @@ class VariableExpression extends AstNode_1.Expression {
1046
1060
  }
1047
1061
  return result;
1048
1062
  }
1063
+ getTypedef(state) {
1064
+ return [
1065
+ state.transpileToken(this.tokens.name)
1066
+ ];
1067
+ }
1049
1068
  walk(visitor, options) {
1050
1069
  //nothing to walk
1051
1070
  }
@@ -1883,6 +1902,100 @@ class TypedArrayExpression extends AstNode_1.Expression {
1883
1902
  }
1884
1903
  }
1885
1904
  exports.TypedArrayExpression = TypedArrayExpression;
1905
+ class InlineInterfaceExpression extends AstNode_1.Expression {
1906
+ constructor(options) {
1907
+ super();
1908
+ this.kind = AstNode_1.AstNodeKind.InlineInterfaceExpression;
1909
+ this.tokens = {
1910
+ open: options.open,
1911
+ close: options.close
1912
+ };
1913
+ this.members = options.members;
1914
+ this.location = util_1.default.createBoundingLocation(this.tokens.open, ...this.members, this.tokens.close);
1915
+ }
1916
+ get leadingTrivia() {
1917
+ var _a;
1918
+ return (_a = this.tokens.open) === null || _a === void 0 ? void 0 : _a.leadingTrivia;
1919
+ }
1920
+ transpile(state) {
1921
+ return [this.getType({ flags: 2 /* SymbolTypeFlag.typetime */ }).toTypeString()];
1922
+ }
1923
+ walk(visitor, options) {
1924
+ if (options.walkMode & visitors_2.InternalWalkMode.walkExpressions) {
1925
+ (0, visitors_2.walkArray)(this.members, visitor, options, this);
1926
+ }
1927
+ }
1928
+ getType(options) {
1929
+ var _a, _b, _c;
1930
+ const resultType = new InlineInterfaceType_1.InlineInterfaceType();
1931
+ for (const member of this.members) {
1932
+ let memberName = (_c = (_b = (_a = member.tokens) === null || _a === void 0 ? void 0 : _a.name) === null || _b === void 0 ? void 0 : _b.text) !== null && _c !== void 0 ? _c : '';
1933
+ if (member.tokens.name.kind === TokenKind_1.TokenKind.StringLiteral) {
1934
+ memberName = memberName.replace(/"/g, ''); // remove quotes if it was a stringLiteral
1935
+ }
1936
+ if (memberName) {
1937
+ const memberType = member === null || member === void 0 ? void 0 : member.getType(Object.assign(Object.assign({}, options), { typeChain: undefined })); // no typechain info needed
1938
+ let flag = 1 /* SymbolTypeFlag.runtime */;
1939
+ if (member.isOptional) {
1940
+ flag |= 4 /* SymbolTypeFlag.optional */;
1941
+ }
1942
+ resultType.addMember(memberName, { definingNode: member }, memberType, flag);
1943
+ }
1944
+ }
1945
+ return resultType;
1946
+ }
1947
+ clone() {
1948
+ var _a;
1949
+ return this.finalizeClone(new InlineInterfaceExpression({
1950
+ open: util_1.default.cloneToken(this.tokens.open),
1951
+ members: (_a = this.members) === null || _a === void 0 ? void 0 : _a.map(x => x === null || x === void 0 ? void 0 : x.clone()),
1952
+ close: util_1.default.cloneToken(this.tokens.close)
1953
+ }), ['members']);
1954
+ }
1955
+ }
1956
+ exports.InlineInterfaceExpression = InlineInterfaceExpression;
1957
+ class InlineInterfaceMemberExpression extends AstNode_1.Expression {
1958
+ constructor(options) {
1959
+ super();
1960
+ this.kind = AstNode_1.AstNodeKind.InlineInterfaceMemberExpression;
1961
+ this.tokens = {
1962
+ name: options.name,
1963
+ as: options.as,
1964
+ optional: options.optional
1965
+ };
1966
+ this.typeExpression = options.typeExpression;
1967
+ this.location = util_1.default.createBoundingLocation(this.tokens.optional, this.tokens.name, this.tokens.as, this.typeExpression);
1968
+ }
1969
+ get leadingTrivia() {
1970
+ var _a, _b;
1971
+ return (_b = (_a = this.tokens.optional) === null || _a === void 0 ? void 0 : _a.leadingTrivia) !== null && _b !== void 0 ? _b : this.tokens.name.leadingTrivia;
1972
+ }
1973
+ transpile(state) {
1974
+ throw new Error('Method not implemented.');
1975
+ }
1976
+ walk(visitor, options) {
1977
+ if (options.walkMode & visitors_2.InternalWalkMode.walkExpressions) {
1978
+ (0, visitors_2.walk)(this, 'typeExpression', visitor, options);
1979
+ }
1980
+ }
1981
+ getType(options) {
1982
+ var _a, _b;
1983
+ return (_b = (_a = this.typeExpression) === null || _a === void 0 ? void 0 : _a.getType(options)) !== null && _b !== void 0 ? _b : DynamicType_1.DynamicType.instance;
1984
+ }
1985
+ get isOptional() {
1986
+ return !!this.tokens.optional;
1987
+ }
1988
+ clone() {
1989
+ var _a;
1990
+ return this.finalizeClone(new InlineInterfaceMemberExpression({
1991
+ typeExpression: (_a = this.typeExpression) === null || _a === void 0 ? void 0 : _a.clone(),
1992
+ as: util_1.default.cloneToken(this.tokens.as),
1993
+ name: util_1.default.cloneToken(this.tokens.name),
1994
+ optional: util_1.default.cloneToken(this.tokens.optional)
1995
+ }), ['typeExpression']);
1996
+ }
1997
+ }
1998
+ exports.InlineInterfaceMemberExpression = InlineInterfaceMemberExpression;
1886
1999
  /**
1887
2000
  * A list of names of functions that are restricted from being stored to a
1888
2001
  * variable, property, or passed as an argument. (i.e. `type` or `createobject`).