@artel/artc 0.9.26038-pre-release → 0.9.26039-pre-release

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.
package/build/Cli.js CHANGED
@@ -1,11 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  CommandLineCompiler
4
- } from "./chunk-NRZEWWTT.js";
5
- import "./chunk-3I4SQIYG.js";
4
+ } from "./chunk-L6XKUP4X.js";
5
+ import "./chunk-6MDQX6SE.js";
6
6
  import {
7
7
  __async
8
- } from "./chunk-62UH22KS.js";
8
+ } from "./chunk-6WDAMNXB.js";
9
9
 
10
10
  // source/Cli.ts
11
11
  function main() {
package/build/api/Api.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Compiler
3
- } from "../chunk-3I4SQIYG.js";
3
+ } from "../chunk-6MDQX6SE.js";
4
4
  import {
5
5
  AccessKind,
6
6
  AccessedFunction_entity,
@@ -311,7 +311,7 @@ import {
311
311
  withoutQuotes,
312
312
  withoutTemplateQuotes,
313
313
  yieldTask
314
- } from "../chunk-62UH22KS.js";
314
+ } from "../chunk-6WDAMNXB.js";
315
315
  export {
316
316
  AccessKind,
317
317
  AccessedFunction_entity,
@@ -6,9 +6,9 @@ import {
6
6
  PhysicalFileSystem,
7
7
  PhysicalTypeScriptLibrariesProvider,
8
8
  PrintingDiagnosticAcceptor
9
- } from "../chunk-NRZEWWTT.js";
10
- import "../chunk-3I4SQIYG.js";
11
- import "../chunk-62UH22KS.js";
9
+ } from "../chunk-L6XKUP4X.js";
10
+ import "../chunk-6MDQX6SE.js";
11
+ import "../chunk-6WDAMNXB.js";
12
12
  export {
13
13
  CommandLineCompiler,
14
14
  FileSystemUri,
@@ -141,7 +141,7 @@ import {
141
141
  traverseTreeAsync,
142
142
  traverseTreeAsync2,
143
143
  yieldTask
144
- } from "../chunk-62UH22KS.js";
144
+ } from "../chunk-6WDAMNXB.js";
145
145
 
146
146
  // source/services/common/Types.ts
147
147
  import * as ls from "vscode-languageserver";
@@ -8152,7 +8152,8 @@ var supportedSemanticTokens = [
8152
8152
  4 /* PackageFunction */,
8153
8153
  5 /* NestedFunction */,
8154
8154
  6 /* Method */,
8155
- 7 /* Operator */
8155
+ 7 /* Operator */,
8156
+ 8 /* KeywordControl */
8156
8157
  ];
8157
8158
  var supportedSemanticTokenModifiers = [
8158
8159
  1 /* Const */,
@@ -17955,6 +17956,13 @@ var SemanticTokensServiceM = class {
17955
17956
  new SemanticToken(name.rangeWithoutTrivia, 6 /* Method */, new SemanticTokenModifiers().makeDeclaration().setCapitalized(this.isCapitalizedName(name.value)))
17956
17957
  );
17957
17958
  }
17959
+ if (isKeyword2(node, 1011 /* End */) && this.isEndKeywordEndingStatement(node)) {
17960
+ result.push(new SemanticToken(
17961
+ node.rangeWithoutTrivia,
17962
+ 8 /* KeywordControl */,
17963
+ new SemanticTokenModifiers()
17964
+ ));
17965
+ }
17958
17966
  return void 0;
17959
17967
  }
17960
17968
  );
@@ -17976,6 +17984,25 @@ var SemanticTokensServiceM = class {
17976
17984
  Debug.never(entity);
17977
17985
  }
17978
17986
  }
17987
+ isEndKeywordEndingStatement(node) {
17988
+ const parent = node.parent;
17989
+ switch (parent.kind) {
17990
+ case 1098 /* StatementBlock */:
17991
+ return true;
17992
+ case 1035 /* FunctionBlock */:
17993
+ case 1061 /* MethodDeclaration */:
17994
+ case 1062 /* MethodTranslation */:
17995
+ case 1077 /* PackageImportDirective */:
17996
+ case 1125 /* TranslationsDeclaration */:
17997
+ case 1130 /* TypeMemberDeclarationBlock */:
17998
+ case 1138 /* TypeTranslationDeclaration */:
17999
+ return false;
18000
+ default:
18001
+ Debug.typeIsAssignableTo();
18002
+ Debug.typeIsAssignableTo();
18003
+ return false;
18004
+ }
18005
+ }
17979
18006
  isCapitalizedName(name) {
17980
18007
  let firstChar;
17981
18008
  if (typeof name === "string") {
@@ -19750,11 +19777,11 @@ ${e}`);
19750
19777
  convertSemanticTokenKind(kind) {
19751
19778
  switch (kind) {
19752
19779
  case 0 /* FunctionBlockLiteralParameter */:
19753
- return "keyword.art";
19780
+ return "keywordNotControl";
19754
19781
  case 1 /* SpecialVariable */:
19755
- return "keyword.art";
19782
+ return "keywordNotControl";
19756
19783
  case 2 /* SpecialMethod */:
19757
- return "keyword.art";
19784
+ return "keywordNotControl";
19758
19785
  case 3 /* Variant */:
19759
19786
  return ls3.SemanticTokenTypes.enumMember;
19760
19787
  case 4 /* PackageFunction */:
@@ -19765,6 +19792,8 @@ ${e}`);
19765
19792
  return ls3.SemanticTokenTypes.method;
19766
19793
  case 7 /* Operator */:
19767
19794
  return ls3.SemanticTokenTypes.operator;
19795
+ case 8 /* KeywordControl */:
19796
+ return "keyword.control";
19768
19797
  default:
19769
19798
  Debug.never(kind);
19770
19799
  }
@@ -10,7 +10,7 @@ import {
10
10
  WellKnownDeclarationsLoadError,
11
11
  __async,
12
12
  createTsInteropInputsForCompilation
13
- } from "./chunk-62UH22KS.js";
13
+ } from "./chunk-6WDAMNXB.js";
14
14
 
15
15
  // source/executor/Compiler.ts
16
16
  var Compiler = class {
@@ -780,7 +780,7 @@ var UniqueWithComparatorQuery = class extends Query {
780
780
  };
781
781
 
782
782
  // source/common/Constants.ts
783
- var ArtelVersion = true ? "0.9.26038-pre-release" : "";
783
+ var ArtelVersion = true ? "0.9.26039-pre-release" : "";
784
784
  var ArtelSourceFileExtensions = [".\u0430\u0440\u0442", ".\u0430\u0440\u0442\u0435\u043B\u044C", ".art", ".artel", ".\u0430\u0440\u0442\u043C", ".\u0430\u0440\u0442\u0435\u043B\u044C\u043C", ".artm", ".artelm"];
785
785
  var ArtelSourceFileExtensionSet = new Set(ArtelSourceFileExtensions);
786
786
  var ArtelSourceAndConfigurationFileExtensionSet = new Set(ArtelSourceFileExtensionSet).add(".json");
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Compiler
3
- } from "./chunk-3I4SQIYG.js";
3
+ } from "./chunk-6MDQX6SE.js";
4
4
  import {
5
5
  ArtelVersion,
6
6
  Cached,
@@ -16,7 +16,7 @@ import {
16
16
  __async,
17
17
  performanceMeasurementStageNames,
18
18
  performanceMeasurementStages
19
- } from "./chunk-62UH22KS.js";
19
+ } from "./chunk-6WDAMNXB.js";
20
20
 
21
21
  // source/executor/FileSystemUri.ts
22
22
  import { platform } from "os";
@@ -21,9 +21,10 @@ export declare const enum SemanticTokenKind {
21
21
  PackageFunction = 4,
22
22
  NestedFunction = 5,
23
23
  Method = 6,
24
- Operator = 7
24
+ Operator = 7,
25
+ KeywordControl = 8
25
26
  }
26
- export declare const supportedSemanticTokens: readonly [SemanticTokenKind.FunctionBlockLiteralParameter, SemanticTokenKind.SpecialVariable, SemanticTokenKind.SpecialMethod, SemanticTokenKind.Variant, SemanticTokenKind.PackageFunction, SemanticTokenKind.NestedFunction, SemanticTokenKind.Method, SemanticTokenKind.Operator];
27
+ export declare const supportedSemanticTokens: readonly [SemanticTokenKind.FunctionBlockLiteralParameter, SemanticTokenKind.SpecialVariable, SemanticTokenKind.SpecialMethod, SemanticTokenKind.Variant, SemanticTokenKind.PackageFunction, SemanticTokenKind.NestedFunction, SemanticTokenKind.Method, SemanticTokenKind.Operator, SemanticTokenKind.KeywordControl];
27
28
  export declare const enum SemanticTokenModifierFlag {
28
29
  Const = 1,
29
30
  Declaration = 2,
@@ -7,5 +7,6 @@ export declare class SemanticTokensServiceM {
7
7
  getSemanticTokensInRange(analyzer: Analyzer, sourceFile: SourceFileM, range: Range, taskController: TaskController): Promise<SemanticToken[]>;
8
8
  private rangesOverlap;
9
9
  private getSemanticTokenKindForNamedFunctionEntity;
10
+ private isEndKeywordEndingStatement;
10
11
  private isCapitalizedName;
11
12
  }
@@ -15,6 +15,8 @@ export type Identifier = Token<TokenKind.Identifier>;
15
15
  export type IdentifierParent = NodesWithChild<Identifier>;
16
16
  export type IdentifierListElement = Identifier | Comma;
17
17
  export type ObjectKeyword = Keyword<KeywordKind.Object>;
18
+ export type EndKeyword = Keyword<KeywordKind.End>;
19
+ export type EndKeywordParent = NodesWithChild<EndKeyword>;
18
20
  export declare class SourceFile extends BaseNode {
19
21
  readonly kind = NodeKind.SourceFile;
20
22
  readonly children: readonly [
@@ -62,16 +64,16 @@ export declare class PackageImportDirective extends BaseNode {
62
64
  Token<TokenKind.OpenBrace> | undefined,
63
65
  PackageImportList,
64
66
  Token<TokenKind.CloseBrace> | undefined,
65
- Keyword<KeywordKind.End> | undefined
67
+ EndKeyword | undefined
66
68
  ];
67
69
  get parent(): PackageImportDirectiveList;
68
70
  get importKeyword(): Keyword<KeywordKind.Import>;
69
71
  get openBraceToken(): Token<TokenKind.OpenBrace> | undefined;
70
72
  get packageImportList(): PackageImportList;
71
73
  get closeBraceToken(): Token<TokenKind.CloseBrace> | undefined;
72
- get endKeyword(): Keyword<KeywordKind.End> | undefined;
74
+ get endKeyword(): EndKeyword | undefined;
73
75
  protected get thisAsNode(): Node;
74
- constructor(importKeyword: Keyword<KeywordKind.Import>, openBraceToken: Token<TokenKind.OpenBrace> | undefined, packageImportList: PackageImportList, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: Keyword<KeywordKind.End> | undefined, rangeWithTrivia: Range | undefined);
76
+ constructor(importKeyword: Keyword<KeywordKind.Import>, openBraceToken: Token<TokenKind.OpenBrace> | undefined, packageImportList: PackageImportList, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: EndKeyword | undefined, rangeWithTrivia: Range | undefined);
75
77
  }
76
78
  export type PackageImportListElement = PackageImport | Semicolon;
77
79
  export declare class PackageImportList extends BaseNode {
@@ -500,15 +502,15 @@ export declare class TypeMemberDeclarationBlock extends BaseNode {
500
502
  Token<TokenKind.OpenBrace> | undefined,
501
503
  TypeMemberDeclarationList,
502
504
  Token<TokenKind.CloseBrace> | undefined,
503
- Keyword<KeywordKind.End> | undefined
505
+ EndKeyword | undefined
504
506
  ];
505
507
  get parent(): TypeMemberDeclarationBlockParent;
506
508
  get openBraceToken(): Token<TokenKind.OpenBrace> | undefined;
507
509
  get memberList(): TypeMemberDeclarationList;
508
510
  get closeBraceToken(): Token<TokenKind.CloseBrace> | undefined;
509
- get endKeyword(): Keyword<KeywordKind.End> | undefined;
511
+ get endKeyword(): EndKeyword | undefined;
510
512
  protected get thisAsNode(): Node;
511
- constructor(openBraceToken: Token<TokenKind.OpenBrace> | undefined, memberList: TypeMemberDeclarationList, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: Keyword<KeywordKind.End> | undefined, rangeWithTrivia: Range | undefined);
513
+ constructor(openBraceToken: Token<TokenKind.OpenBrace> | undefined, memberList: TypeMemberDeclarationList, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: EndKeyword | undefined, rangeWithTrivia: Range | undefined);
512
514
  }
513
515
  export type TypeMemberDeclarationListElement = TypeMemberDeclaration | Semicolon;
514
516
  export declare class TypeMemberDeclarationList extends BaseNode {
@@ -1101,15 +1103,15 @@ export declare class StatementBlock extends BaseNode {
1101
1103
  Token<TokenKind.OpenBrace> | undefined,
1102
1104
  StatementList,
1103
1105
  Token<TokenKind.CloseBrace> | undefined,
1104
- Keyword<KeywordKind.End> | undefined
1106
+ EndKeyword | undefined
1105
1107
  ];
1106
1108
  get parent(): StatementBlockParent;
1107
1109
  get openBraceToken(): Token<TokenKind.OpenBrace> | undefined;
1108
1110
  get statementList(): StatementList;
1109
1111
  get closeBraceToken(): Token<TokenKind.CloseBrace> | undefined;
1110
- get endKeyword(): Keyword<KeywordKind.End> | undefined;
1112
+ get endKeyword(): EndKeyword | undefined;
1111
1113
  protected get thisAsNode(): Node;
1112
- constructor(openBraceToken: Token<TokenKind.OpenBrace> | undefined, statementList: StatementList, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: Keyword<KeywordKind.End> | undefined, rangeWithTrivia: Range | undefined);
1114
+ constructor(openBraceToken: Token<TokenKind.OpenBrace> | undefined, statementList: StatementList, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: EndKeyword | undefined, rangeWithTrivia: Range | undefined);
1113
1115
  }
1114
1116
  export type FunctionBlockParent = PackageVariableGetterDeclaration | PackageVariableSetterDeclaration | PackageFunctionDeclaration | FieldGetterDeclaration | FieldSetterDeclaration | IndexedElementGetterDeclaration | IndexedElementSetterDeclaration | MethodDeclaration | NestedFunctionDeclaration | FunctionLiteral | FunctionBlockLiteral | TextTranslationFunctionDeclaration | StaticMethodDeclaration | StaticFieldGetterDeclaration | StaticFieldSetterDeclaration;
1115
1117
  export declare class FunctionBlock extends BaseNode {
@@ -1118,15 +1120,15 @@ export declare class FunctionBlock extends BaseNode {
1118
1120
  Token<TokenKind.OpenBrace> | undefined,
1119
1121
  StatementList,
1120
1122
  Token<TokenKind.CloseBrace> | undefined,
1121
- Keyword<KeywordKind.End> | undefined
1123
+ EndKeyword | undefined
1122
1124
  ];
1123
1125
  get parent(): FunctionBlockParent;
1124
1126
  get openBraceToken(): Token<TokenKind.OpenBrace> | undefined;
1125
1127
  get statementList(): StatementList;
1126
1128
  get closeBraceToken(): Token<TokenKind.CloseBrace> | undefined;
1127
- get endKeyword(): Keyword<KeywordKind.End> | undefined;
1129
+ get endKeyword(): EndKeyword | undefined;
1128
1130
  protected get thisAsNode(): Node;
1129
- constructor(openBraceToken: Token<TokenKind.OpenBrace> | undefined, statementList: StatementList, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: Keyword<KeywordKind.End> | undefined, rangeWithTrivia: Range | undefined);
1131
+ constructor(openBraceToken: Token<TokenKind.OpenBrace> | undefined, statementList: StatementList, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: EndKeyword | undefined, rangeWithTrivia: Range | undefined);
1130
1132
  }
1131
1133
  export type StatementParent = StatementList | PackageStatement;
1132
1134
  export declare class BreakLoopStatement extends BaseNode {
@@ -1704,7 +1706,7 @@ export declare class TranslationsDeclaration extends BaseNode {
1704
1706
  Token<TokenKind.OpenBrace> | undefined,
1705
1707
  TopLevelTranslationList,
1706
1708
  Token<TokenKind.CloseBrace> | undefined,
1707
- Keyword<KeywordKind.End> | undefined
1709
+ EndKeyword | undefined
1708
1710
  ];
1709
1711
  get parent(): PackageMemberDeclarationList;
1710
1712
  get tagList(): TagList;
@@ -1712,9 +1714,9 @@ export declare class TranslationsDeclaration extends BaseNode {
1712
1714
  get openBraceToken(): Token<TokenKind.OpenBrace> | undefined;
1713
1715
  get translationList(): TopLevelTranslationList;
1714
1716
  get closeBraceToken(): Token<TokenKind.CloseBrace> | undefined;
1715
- get endKeyword(): Keyword<KeywordKind.End> | undefined;
1717
+ get endKeyword(): EndKeyword | undefined;
1716
1718
  protected get thisAsNode(): Node;
1717
- constructor(tagList: TagList, translationsKeyword: Keyword<KeywordKind.Translations>, openBraceToken: Token<TokenKind.OpenBrace> | undefined, translationList: TopLevelTranslationList, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: Keyword<KeywordKind.End> | undefined, rangeWithTrivia: Range | undefined);
1719
+ constructor(tagList: TagList, translationsKeyword: Keyword<KeywordKind.Translations>, openBraceToken: Token<TokenKind.OpenBrace> | undefined, translationList: TopLevelTranslationList, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: EndKeyword | undefined, rangeWithTrivia: Range | undefined);
1718
1720
  }
1719
1721
  export type TopLevelTranslationListElement = TranslationDeclaration | Semicolon;
1720
1722
  export declare class TopLevelTranslationList extends BaseNode {
@@ -1739,7 +1741,7 @@ export declare class TypeTranslationDeclaration extends BaseNode {
1739
1741
  Token<TokenKind.OpenBrace> | undefined,
1740
1742
  TypeMemberTranslationList | undefined,
1741
1743
  Token<TokenKind.CloseBrace> | undefined,
1742
- Keyword<KeywordKind.End> | undefined
1744
+ EndKeyword | undefined
1743
1745
  ];
1744
1746
  get parent(): TopLevelTranslationList;
1745
1747
  get typeKeyword(): Keyword<KeywordKind.Type>;
@@ -1751,9 +1753,9 @@ export declare class TypeTranslationDeclaration extends BaseNode {
1751
1753
  get openBraceToken(): Token<TokenKind.OpenBrace> | undefined;
1752
1754
  get memberList(): TypeMemberTranslationList | undefined;
1753
1755
  get closeBraceToken(): Token<TokenKind.CloseBrace> | undefined;
1754
- get endKeyword(): Keyword<KeywordKind.End> | undefined;
1756
+ get endKeyword(): EndKeyword | undefined;
1755
1757
  protected get thisAsNode(): Node;
1756
- constructor(typeKeyword: Keyword<KeywordKind.Type>, sourceName: Identifier, sourceTypeParameterClause: TranslationTypeParameterClause | undefined, rightArrowToken: Token<TokenKind.RightArrow>, translatedName: Identifier, translatedTypeParameterClause: TranslationTypeParameterClause | undefined, openBraceToken: Token<TokenKind.OpenBrace> | undefined, memberList: TypeMemberTranslationList | undefined, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: Keyword<KeywordKind.End> | undefined, rangeWithTrivia: Range | undefined);
1758
+ constructor(typeKeyword: Keyword<KeywordKind.Type>, sourceName: Identifier, sourceTypeParameterClause: TranslationTypeParameterClause | undefined, rightArrowToken: Token<TokenKind.RightArrow>, translatedName: Identifier, translatedTypeParameterClause: TranslationTypeParameterClause | undefined, openBraceToken: Token<TokenKind.OpenBrace> | undefined, memberList: TypeMemberTranslationList | undefined, closeBraceToken: Token<TokenKind.CloseBrace> | undefined, endKeyword: EndKeyword | undefined, rangeWithTrivia: Range | undefined);
1757
1759
  }
1758
1760
  export declare class FunctionTypeTranslationDeclaration extends BaseNode {
1759
1761
  readonly kind = NodeKind.FunctionTypeTranslationDeclaration;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@artel/artc",
3
- "version": "0.9.26038-pre-release",
3
+ "version": "0.9.26039-pre-release",
4
4
  "description": "Артель Компилятор | Artel Compiler",
5
5
  "author": "Nezaboodka Team <contact@nezaboodka.com>",
6
6
  "license": "Apache-2.0",