@typespec/compiler 1.6.0-dev.8 → 1.6.0

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 (68) hide show
  1. package/dist/generated-defs/TypeSpec.d.ts +5 -5
  2. package/dist/generated-defs/TypeSpec.d.ts.map +1 -1
  3. package/dist/manifest.js +2 -2
  4. package/dist/src/core/checker.d.ts +2 -1
  5. package/dist/src/core/checker.d.ts.map +1 -1
  6. package/dist/src/core/checker.js +61 -10
  7. package/dist/src/core/checker.js.map +1 -1
  8. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.d.ts +9 -0
  9. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.d.ts.map +1 -0
  10. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.js +22 -0
  11. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.js.map +1 -0
  12. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.test.d.ts +2 -0
  13. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.test.d.ts.map +1 -0
  14. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.test.js +36 -0
  15. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.test.js.map +1 -0
  16. package/dist/src/core/compiler-code-fixes/suppress.codefix.d.ts.map +1 -1
  17. package/dist/src/core/compiler-code-fixes/suppress.codefix.js +1 -16
  18. package/dist/src/core/compiler-code-fixes/suppress.codefix.js.map +1 -1
  19. package/dist/src/core/compiler-code-fixes/utils.d.ts +6 -0
  20. package/dist/src/core/compiler-code-fixes/utils.d.ts.map +1 -0
  21. package/dist/src/core/compiler-code-fixes/utils.js +17 -0
  22. package/dist/src/core/compiler-code-fixes/utils.js.map +1 -0
  23. package/dist/src/core/intrinsic-type-state.d.ts +42 -6
  24. package/dist/src/core/intrinsic-type-state.d.ts.map +1 -1
  25. package/dist/src/core/intrinsic-type-state.js +69 -16
  26. package/dist/src/core/intrinsic-type-state.js.map +1 -1
  27. package/dist/src/core/program.d.ts.map +1 -1
  28. package/dist/src/core/program.js.map +1 -1
  29. package/dist/src/index.d.ts +2 -1
  30. package/dist/src/index.d.ts.map +1 -1
  31. package/dist/src/index.js +3 -7
  32. package/dist/src/index.js.map +1 -1
  33. package/dist/src/lib/decorators.d.ts +2 -1
  34. package/dist/src/lib/decorators.d.ts.map +1 -1
  35. package/dist/src/lib/decorators.js +65 -7
  36. package/dist/src/lib/decorators.js.map +1 -1
  37. package/dist/src/server/classify.d.ts.map +1 -1
  38. package/dist/src/server/classify.js +4 -0
  39. package/dist/src/server/classify.js.map +1 -1
  40. package/dist/src/server/client-config-provider.js +1 -1
  41. package/dist/src/server/client-config-provider.js.map +1 -1
  42. package/dist/src/server/compile-service.js +1 -1
  43. package/dist/src/server/compile-service.js.map +1 -1
  44. package/dist/src/server/completion.js +8 -0
  45. package/dist/src/server/completion.js.map +1 -1
  46. package/dist/src/server/serverlib.d.ts.map +1 -1
  47. package/dist/src/server/serverlib.js +15 -3
  48. package/dist/src/server/serverlib.js.map +1 -1
  49. package/dist/src/server/tmlanguage.d.ts.map +1 -1
  50. package/dist/src/server/tmlanguage.js +3 -2
  51. package/dist/src/server/tmlanguage.js.map +1 -1
  52. package/dist/src/server/update-manager.d.ts +23 -6
  53. package/dist/src/server/update-manager.d.ts.map +1 -1
  54. package/dist/src/server/update-manager.js +93 -21
  55. package/dist/src/server/update-manager.js.map +1 -1
  56. package/dist/src/typekit/kits/literal.d.ts +2 -1
  57. package/dist/src/typekit/kits/literal.d.ts.map +1 -1
  58. package/dist/src/typekit/kits/literal.js.map +1 -1
  59. package/dist/src/typekit/kits/value.d.ts +11 -3
  60. package/dist/src/typekit/kits/value.d.ts.map +1 -1
  61. package/dist/src/typekit/kits/value.js +3 -0
  62. package/dist/src/typekit/kits/value.js.map +1 -1
  63. package/dist/src/types/package-json.d.ts +11 -0
  64. package/dist/src/types/package-json.d.ts.map +1 -1
  65. package/dist/typespec.tmLanguage +38 -33
  66. package/lib/std/decorators.tsp +25 -4
  67. package/package.json +5 -6
  68. package/templates/scaffolding.json +3 -3
@@ -1,30 +1,44 @@
1
1
  import { ENABLE_UPDATE_MANAGER_LOGGING } from "./constants.js";
2
2
  /**
3
3
  * Track file updates and recompile the affected files after some debounce time.
4
+ * T will be returned if the scheduled update is triggered eventually, but if a newer scheduleUpdate is triggered, the previous ones will be cancelled and return undefined.
4
5
  */
5
6
  export class UpdateManager {
7
+ name;
6
8
  #pendingUpdates = new Map();
7
9
  #updateCb;
8
10
  // overall version which should be bumped for any actual doc change
9
11
  #docChangedVersion = 0;
10
12
  #scheduleBatchUpdate;
11
13
  #docChangedTimesteps = [];
14
+ #isStarted = false;
12
15
  _log;
13
- constructor(log) {
16
+ /**
17
+ *
18
+ * @param name For logging purpose, identify different update manager if there are multiple
19
+ * @param log
20
+ */
21
+ constructor(name, log) {
22
+ this.name = name;
14
23
  this._log =
15
24
  typeof process !== "undefined" &&
16
25
  process?.env?.[ENABLE_UPDATE_MANAGER_LOGGING]?.toLowerCase() === "true"
17
26
  ? (sl) => {
18
- log({ ...sl, message: `#FromUpdateManager: ${sl.message}` });
27
+ log({ ...sl, message: `#FromUpdateManager(${this.name}): ${sl.message}` });
19
28
  }
20
29
  : () => { };
21
- this.#scheduleBatchUpdate = debounceThrottle(async () => {
30
+ this.#scheduleBatchUpdate = debounceThrottle(async (arg) => {
22
31
  const updates = this.#pendingUpdates;
23
32
  this.#pendingUpdates = new Map();
24
- if (updates.size > 0) {
25
- await this.#update(Array.from(updates.values()));
26
- }
27
- }, this.getAdaptiveDebounceDelay, this._log);
33
+ return await this.#update(Array.from(updates.values()), arg);
34
+ }, () => (this.#isStarted ? "ready" : "pending"), this.getAdaptiveDebounceDelay, this._log);
35
+ }
36
+ /**
37
+ * Callback will only be invoked after start() is called.
38
+ * We need to start explicitly to avoid compiling with incorrect settings when the lsp hasn't fully initialized (the client settings are not loaded yet.)
39
+ */
40
+ start() {
41
+ this.#isStarted = true;
28
42
  }
29
43
  setCallback(callback) {
30
44
  this.#updateCb = callback;
@@ -77,8 +91,12 @@ export class UpdateManager {
77
91
  }
78
92
  return this.DEFAULT_DELAY;
79
93
  };
80
- scheduleUpdate(document, UpdateType) {
81
- if (UpdateType === "changed" || UpdateType === "renamed") {
94
+ /**
95
+ * T will be returned if the schedule is triggered eventually, if a newer scheduleUpdate
96
+ * occurs before the debounce time, the previous ones will be cancelled and return undefined.
97
+ */
98
+ scheduleUpdate(document, updateType) {
99
+ if (updateType === "changed" || updateType === "renamed") {
82
100
  // only bump this when the file is actually changed
83
101
  // skip open
84
102
  this.bumpDocChangedVersion();
@@ -95,10 +113,17 @@ export class UpdateManager {
95
113
  existing.latest = document;
96
114
  existing.latestUpdateTimestamp = Date.now();
97
115
  }
98
- this.#scheduleBatchUpdate();
116
+ return this.#scheduleBatchUpdate(document);
99
117
  }
100
- async #update(updates) {
101
- await this.#updateCb?.(updates);
118
+ async #update(updates, arg) {
119
+ if (this.#updateCb === undefined) {
120
+ this._log({
121
+ level: "warning",
122
+ message: `No update callback registered, skip invoking update.`,
123
+ });
124
+ return undefined;
125
+ }
126
+ return await this.#updateCb(updates, arg);
102
127
  }
103
128
  }
104
129
  /**
@@ -107,38 +132,65 @@ export class UpdateManager {
107
132
  * took too long and the whole timeout of the next call was eaten up already.
108
133
  *
109
134
  * @param fn The function
135
+ * @param getFnStatus Fn will only be called when this returns "ready"
110
136
  * @param milliseconds Number of milliseconds to debounce/throttle
111
137
  */
112
- export function debounceThrottle(fn, getDelay, log) {
138
+ export function debounceThrottle(fn, getFnStatus, getDelay, log) {
113
139
  let timeout;
114
140
  let lastInvocation = undefined;
115
141
  let executingCount = 0;
116
142
  let debounceExecutionId = 0;
143
+ const executionPromises = new Map();
117
144
  const UPDATE_PARALLEL_LIMIT = 2;
118
- function maybeCall() {
145
+ function maybeCall(arg) {
146
+ const promise = new DeferredPromise();
147
+ const curId = debounceExecutionId++;
148
+ executionPromises.set(curId, promise);
149
+ maybeCallInternal(curId, arg, promise);
150
+ return promise.getPromise();
151
+ }
152
+ /** Clear all promises before the given id to make sure we are not leaking anything */
153
+ function clearPromisesBefore(id) {
154
+ // clear all promises before with id < the given id
155
+ for (const k of executionPromises.keys()) {
156
+ if (k < id) {
157
+ executionPromises.get(k)?.resolvePromise(undefined);
158
+ executionPromises.delete(k);
159
+ }
160
+ }
161
+ }
162
+ function maybeCallInternal(id, arg, promise) {
119
163
  clearTimeout(timeout);
164
+ clearPromisesBefore(id);
120
165
  timeout = setTimeout(async () => {
121
- if (lastInvocation !== undefined &&
122
- (Date.now() - lastInvocation < getDelay() || executingCount >= UPDATE_PARALLEL_LIMIT)) {
123
- maybeCall();
166
+ const delay = getDelay();
167
+ const tooSoon = lastInvocation !== undefined && Date.now() - lastInvocation < delay;
168
+ const notReady = getFnStatus() !== "ready";
169
+ const tooManyParallel = executingCount >= UPDATE_PARALLEL_LIMIT;
170
+ if (notReady || tooSoon || tooManyParallel) {
171
+ maybeCallInternal(id, arg, promise);
124
172
  return;
125
173
  }
126
- const curId = debounceExecutionId++;
127
174
  const s = new Date();
128
175
  try {
129
176
  executingCount++;
130
177
  log({
131
178
  level: "debug",
132
- message: `Starting debounce execution #${curId} at ${s.toISOString()}. Current parallel count: ${executingCount}`,
179
+ message: `Starting debounce execution #${id} at ${s.toISOString()}. Current parallel count: ${executingCount}`,
133
180
  });
134
- await fn();
181
+ const r = await fn(arg);
182
+ promise.resolvePromise(r);
183
+ }
184
+ catch (e) {
185
+ promise.rejectPromise(e);
135
186
  }
136
187
  finally {
188
+ executionPromises.delete(id);
137
189
  executingCount--;
138
190
  const e = new Date();
139
191
  log({
140
192
  level: "debug",
141
- message: `Finish debounce execution #${curId} at ${e.toISOString()}, duration=${e.getTime() - s.getTime()}. Current parallel count: ${executingCount}`,
193
+ message: `Finish debounce execution #${id} at ${e.toISOString()}, duration=${e.getTime() - s.getTime()}. Current parallel count: ${executingCount}`,
142
194
  });
143
195
  }
144
196
  lastInvocation = Date.now();
@@ -146,4 +198,24 @@ export function debounceThrottle(fn, getDelay, log) {
146
198
  }
147
199
  return maybeCall;
148
200
  }
201
+ class DeferredPromise {
202
+ #promise;
203
+ #resolve;
204
+ #reject;
205
+ constructor() {
206
+ this.#promise = new Promise((res, rej) => {
207
+ this.#resolve = res;
208
+ this.#reject = rej;
209
+ });
210
+ }
211
+ getPromise() {
212
+ return this.#promise;
213
+ }
214
+ resolvePromise(value) {
215
+ this.#resolve(value);
216
+ }
217
+ rejectPromise(reason) {
218
+ this.#reject(reason);
219
+ }
220
+ }
149
221
  //# sourceMappingURL=update-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"update-manager.js","sourceRoot":"","sources":["../../../src/server/update-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-manager.js","sourceRoot":"","sources":["../../../src/server/update-manager.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { Numeric } from "../../core/numeric.js";
1
2
  import type { BooleanLiteral, Entity, NumericLiteral, StringLiteral } from "../../core/types.js";
2
3
  /**
3
4
  * A Typekit for working with literal types(string, numeric, boolean).
@@ -22,7 +23,7 @@ export interface LiteralKit {
22
23
  *
23
24
  * @param value The numeric value.
24
25
  */
25
- createNumeric(value: number): NumericLiteral;
26
+ createNumeric(value: number | Numeric): NumericLiteral;
26
27
  /**
27
28
  * Create a boolean literal type from a JavaScript boolean value.
28
29
  *
@@ -1 +1 @@
1
- {"version":3,"file":"literal.d.ts","sourceRoot":"","sources":["../../../../src/typekit/kits/literal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGjG;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;IAE1F;;;;OAIG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC;IAE3C;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC;IAE7C;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,CAAC;IAE9C;;;;OAIG;IACH,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;IAE1E;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,aAAa,CAAC;IAE9C;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,cAAc,CAAC;IAEhD;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,cAAc,CAAC;CACjD;AAED,UAAU,gBAAgB;IACxB;;;;;OAKG;IACH,OAAO,EAAE,UAAU,CAAC;CACrB;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C"}
1
+ {"version":3,"file":"literal.d.ts","sourceRoot":"","sources":["../../../../src/typekit/kits/literal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGjG;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;IAE1F;;;;OAIG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC;IAE3C;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,cAAc,CAAC;IAEvD;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,CAAC;IAE9C;;;;OAIG;IACH,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;IAE1E;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,aAAa,CAAC;IAE9C;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,cAAc,CAAC;IAEhD;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,cAAc,CAAC;CACjD;AAED,UAAU,gBAAgB;IACxB;;;;;OAKG;IACH,OAAO,EAAE,UAAU,CAAC;CACrB;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"literal.js","sourceRoot":"","sources":["../../../../src/typekit/kits/literal.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AA+E7C,SAAS,CAAmB;IAC1B,OAAO,EAAE;QACP,MAAM,CAAC,KAAK;YACV,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QACD,YAAY,CAAC,KAAK;YAChB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QAED,aAAa,CAAC,KAAK;YACjB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QAED,aAAa,CAAC,KAAK;YACjB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QAED,SAAS,CAAC,IAAI;YACZ,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC;QAC/D,CAAC;QACD,QAAQ,CAAC,IAAI;YACX,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC9D,CAAC;QACD,SAAS,CAAC,IAAI;YACZ,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC9D,CAAC;QACD,EAAE,CAAC,IAAI;YACL,OAAO,CACL,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAC5F,CAAC;QACJ,CAAC;KACF;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"literal.js","sourceRoot":"","sources":["../../../../src/typekit/kits/literal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AA+E7C,SAAS,CAAmB;IAC1B,OAAO,EAAE;QACP,MAAM,CAAC,KAAK;YACV,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QACD,YAAY,CAAC,KAAK;YAChB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QAED,aAAa,CAAC,KAAK;YACjB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QAED,aAAa,CAAC,KAAK;YACjB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QAED,SAAS,CAAC,IAAI;YACZ,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC;QAC/D,CAAC;QACD,QAAQ,CAAC,IAAI;YACX,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC9D,CAAC;QACD,SAAS,CAAC,IAAI;YACZ,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC9D,CAAC;QACD,EAAE,CAAC,IAAI;YACL,OAAO,CACL,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAC5F,CAAC;QACJ,CAAC;KACF;CACF,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
- import type { ArrayValue, BooleanValue, Entity, EnumValue, Node, NullValue, NumericValue, ObjectValue, ScalarValue, StringValue, Value } from "../../core/types.js";
1
+ import { Numeric } from "../../core/numeric.js";
2
+ import type { ArrayValue, BooleanValue, DiagnosticTarget, Entity, EnumValue, NullValue, NumericValue, ObjectValue, ScalarValue, StringValue, Type, Value } from "../../core/types.js";
2
3
  import { Diagnosable } from "../create-diagnosable.js";
3
4
  /**
4
5
  * @typekit value
@@ -21,7 +22,7 @@ export interface ValueKit {
21
22
  *
22
23
  * @param value The numeric value.
23
24
  */
24
- createNumeric(value: number): NumericValue;
25
+ createNumeric(value: number | Numeric): NumericValue;
25
26
  /**
26
27
  * Create a boolean Value type from a JavaScript boolean value.
27
28
  *
@@ -82,7 +83,14 @@ export interface ValueKit {
82
83
  * @param target Target type
83
84
  * @param diagnosticTarget Target for the diagnostic
84
85
  */
85
- isAssignableTo: Diagnosable<(source: Value, target: Entity, diagnosticTarget?: Entity | Node) => boolean>;
86
+ isAssignableTo: Diagnosable<(source: Value, target: Entity, diagnosticTarget?: DiagnosticTarget) => boolean>;
87
+ /**
88
+ * Check if the source type can be assigned to the target type.
89
+ * @param source Source type
90
+ * @param target Target type
91
+ * @param diagnosticTarget Target for the diagnostic
92
+ */
93
+ isOfType: Diagnosable<(source: Value, target: Type, diagnosticTarget?: DiagnosticTarget) => boolean>;
86
94
  /**
87
95
  * Resolve a value reference to a TypeSpec value.
88
96
  * By default any diagnostics are ignored.
@@ -1 +1 @@
1
- {"version":3,"file":"value.d.ts","sourceRoot":"","sources":["../../../../src/typekit/kits/value.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,MAAM,EACN,SAAS,EACT,IAAI,EACJ,SAAS,EACT,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,KAAK,EACN,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAqB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG1E;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;IAEhD;;;;OAIG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;IAEzC;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAAC;IAE3C;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAAC;IAE5C;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,WAAW,CAAC;IAE5C;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,YAAY,CAAC;IAE9C;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,WAAW,CAAC;IAE5C;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,WAAW,CAAC;IAE5C;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,UAAU,CAAC;IAE1C;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAAC;IAExC;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAAC;IAExC;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,YAAY,CAAC;IAE9C;;;OAGG;IACH,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,KAAK,CAAC;IAEhC;;;;;OAKG;IACH,cAAc,EAAE,WAAW,CACzB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAC7E,CAAC;IAEF;;;;;;;;OAQG;IACH,OAAO,EAAE,WAAW,EAClB,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,CAAC,GAAG,SAAS,EACvC,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,CAAC,KACL,CAAC,SAAS,KAAK,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,CAAC,CAAA;KAAE,CAAC,GAAG,SAAS,EACjF,CAAC;CACH;AAED,UAAU,gBAAgB;IACxB,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C"}
1
+ {"version":3,"file":"value.d.ts","sourceRoot":"","sources":["../../../../src/typekit/kits/value.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,SAAS,EACT,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,IAAI,EACJ,KAAK,EACN,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAqB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG1E;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;IAEhD;;;;OAIG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;IAEzC;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,YAAY,CAAC;IAErD;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAAC;IAE5C;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,WAAW,CAAC;IAE5C;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,YAAY,CAAC;IAE9C;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,WAAW,CAAC;IAE5C;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,WAAW,CAAC;IAE5C;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,UAAU,CAAC;IAE1C;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAAC;IAExC;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAAC;IAExC;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,YAAY,CAAC;IAE9C;;;OAGG;IACH,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,KAAK,CAAC;IAEhC;;;;;OAKG;IACH,cAAc,EAAE,WAAW,CACzB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,gBAAgB,KAAK,OAAO,CAChF,CAAC;IAEF;;;;;OAKG;IACH,QAAQ,EAAE,WAAW,CACnB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,CAAC,EAAE,gBAAgB,KAAK,OAAO,CAC9E,CAAC;IAEF;;;;;;;;OAQG;IACH,OAAO,EAAE,WAAW,EAClB,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,CAAC,GAAG,SAAS,EACvC,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,CAAC,KACL,CAAC,SAAS,KAAK,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,CAAC,CAAA;KAAE,CAAC,GAAG,SAAS,EACjF,CAAC;CACH;AAED,UAAU,gBAAgB;IACxB,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED,OAAO,QAAQ,kBAAkB,CAAC;IAChC,UAAU,OAAQ,SAAQ,gBAAgB;KAAG;CAC9C"}
@@ -73,6 +73,9 @@ defineKit({
73
73
  isAssignableTo: createDiagnosable(function (source, target, diagnosticTarget) {
74
74
  return this.program.checker.isTypeAssignableTo(source, target, diagnosticTarget ?? source);
75
75
  }),
76
+ isOfType: createDiagnosable(function (source, target, diagnosticTarget) {
77
+ return this.program.checker.isValueOfType(source, target, diagnosticTarget ?? source);
78
+ }),
76
79
  resolve: createDiagnosable(function (reference, kind) {
77
80
  const [value, diagnostics] = this.program.resolveTypeOrValueReference(reference);
78
81
  if (value && !isValue(value)) {
@@ -1 +1 @@
1
- {"version":3,"file":"value.js","sourceRoot":"","sources":["../../../../src/typekit/kits/value.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"value.js","sourceRoot":"","sources":["../../../../src/typekit/kits/value.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,17 @@ export interface PackageJson {
32
32
  dependencies?: Record<string, string>;
33
33
  peerDependencies?: Record<string, string>;
34
34
  devDependencies?: Record<string, string>;
35
+ repository?: string | Repository;
36
+ }
37
+ /**
38
+ * Specify the place where your code lives.
39
+ * @see https://yarnpkg.com/en/docs/package-json#toc-repository
40
+ * @see https://docs.npmjs.com/files/package.json#repository
41
+ */
42
+ export interface Repository {
43
+ directory?: string;
44
+ type: string;
45
+ url: string;
35
46
  }
36
47
  /**
37
48
  * Entry points of a module, optionally with conditions and subpath imports.
@@ -1 +1 @@
1
- {"version":3,"file":"package-json.d.ts","sourceRoot":"","sources":["../../../src/types/package-json.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,gBAAgB,CAAC;CAC3C,CAAC;AAEF;;GAEG;AACH,KAAK,gBAAgB,GAAG;IACtB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,gBAAgB,CAAC;CAChD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC,GAAG,gBAAgB,CAAC;AAEnF;;GAEG;AACH,KAAK,gBAAgB,GAAG;IACtB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;CAC9B,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,GAAG,CAAC,EAAE,mBAAmB,CAAC;IAC1B,EAAE,CAAC,EAAE,mBAAmB,CAAC;IACzB,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;CACtC"}
1
+ {"version":3,"file":"package-json.d.ts","sourceRoot":"","sources":["../../../src/types/package-json.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AACD;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,gBAAgB,CAAC;CAC3C,CAAC;AAEF;;GAEG;AACH,KAAK,gBAAgB,GAAG;IACtB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,gBAAgB,CAAC;CAChD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC,GAAG,gBAAgB,CAAC;AAEnF;;GAEG;AACH,KAAK,gBAAgB,GAAG;IACtB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;CAC9B,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,GAAG,CAAC,EAAE,mBAAmB,CAAC;IAC1B,EAAE,CAAC,EAAE,mBAAmB,CAAC;IACzB,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;CACtC"}
@@ -36,7 +36,7 @@
36
36
  </dict>
37
37
  </dict>
38
38
  <key>end</key>
39
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
39
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
40
40
  <key>patterns</key>
41
41
  <array>
42
42
  <dict>
@@ -65,7 +65,7 @@
65
65
  </dict>
66
66
  </dict>
67
67
  <key>end</key>
68
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
68
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
69
69
  <key>patterns</key>
70
70
  <array>
71
71
  <dict>
@@ -98,7 +98,7 @@
98
98
  </dict>
99
99
  </dict>
100
100
  <key>end</key>
101
- <string>(?=([_$[:alpha:]]|`))|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
101
+ <string>(?=([_$[:alpha:]]|`))|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
102
102
  <key>patterns</key>
103
103
  <array>
104
104
  <dict>
@@ -192,7 +192,7 @@
192
192
  </dict>
193
193
  </dict>
194
194
  <key>end</key>
195
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
195
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
196
196
  <key>patterns</key>
197
197
  <array>
198
198
  <dict>
@@ -229,7 +229,7 @@
229
229
  </dict>
230
230
  </dict>
231
231
  <key>end</key>
232
- <string>(?=([_$[:alpha:]]|`))|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
232
+ <string>(?=([_$[:alpha:]]|`))|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
233
233
  <key>patterns</key>
234
234
  <array>
235
235
  <dict>
@@ -267,7 +267,7 @@
267
267
  </dict>
268
268
  </dict>
269
269
  <key>end</key>
270
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
270
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
271
271
  <key>patterns</key>
272
272
  <array>
273
273
  <dict>
@@ -285,7 +285,7 @@
285
285
  <key>name</key>
286
286
  <string>meta.directive.typespec</string>
287
287
  <key>begin</key>
288
- <string>\s*(#\b[_$[:alpha:]][_$[:alnum:]]*\b)</string>
288
+ <string>\s*(#)(\b[_$[:alpha:]][_$[:alnum:]]*\b)</string>
289
289
  <key>beginCaptures</key>
290
290
  <dict>
291
291
  <key>1</key>
@@ -293,9 +293,14 @@
293
293
  <key>name</key>
294
294
  <string>keyword.directive.name.tsp</string>
295
295
  </dict>
296
+ <key>2</key>
297
+ <dict>
298
+ <key>name</key>
299
+ <string>keyword.directive.name.tsp</string>
300
+ </dict>
296
301
  </dict>
297
302
  <key>end</key>
298
- <string>$|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
303
+ <string>$|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
299
304
  <key>patterns</key>
300
305
  <array>
301
306
  <dict>
@@ -491,7 +496,7 @@
491
496
  </dict>
492
497
  </dict>
493
498
  <key>end</key>
494
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
499
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
495
500
  <key>patterns</key>
496
501
  <array>
497
502
  <dict>
@@ -524,7 +529,7 @@
524
529
  </dict>
525
530
  </dict>
526
531
  <key>end</key>
527
- <string>(?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
532
+ <string>(?&lt;=\})|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
528
533
  <key>patterns</key>
529
534
  <array>
530
535
  <dict>
@@ -623,7 +628,7 @@
623
628
  </dict>
624
629
  </dict>
625
630
  <key>end</key>
626
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
631
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
627
632
  <key>patterns</key>
628
633
  <array>
629
634
  <dict>
@@ -662,7 +667,7 @@
662
667
  </dict>
663
668
  </dict>
664
669
  <key>end</key>
665
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
670
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
666
671
  <key>patterns</key>
667
672
  <array>
668
673
  <dict>
@@ -767,7 +772,7 @@
767
772
  </dict>
768
773
  </dict>
769
774
  <key>end</key>
770
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
775
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
771
776
  <key>patterns</key>
772
777
  <array>
773
778
  <dict>
@@ -795,7 +800,7 @@
795
800
  </dict>
796
801
  </dict>
797
802
  <key>end</key>
798
- <string>(?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
803
+ <string>(?&lt;=\})|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
799
804
  <key>patterns</key>
800
805
  <array>
801
806
  <dict>
@@ -927,7 +932,7 @@
927
932
  </dict>
928
933
  </dict>
929
934
  <key>end</key>
930
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
935
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
931
936
  <key>patterns</key>
932
937
  <array>
933
938
  <dict>
@@ -963,7 +968,7 @@
963
968
  </dict>
964
969
  </dict>
965
970
  <key>end</key>
966
- <string>(?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
971
+ <string>(?&lt;=\})|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
967
972
  <key>patterns</key>
968
973
  <array>
969
974
  <dict>
@@ -1023,7 +1028,7 @@
1023
1028
  <key>begin</key>
1024
1029
  <string>(?=([_$[:alpha:]]|`))</string>
1025
1030
  <key>end</key>
1026
- <string>((?=\{)|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b))</string>
1031
+ <string>((?=\{)|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b))</string>
1027
1032
  <key>patterns</key>
1028
1033
  <array>
1029
1034
  <dict>
@@ -1051,7 +1056,7 @@
1051
1056
  </dict>
1052
1057
  </dict>
1053
1058
  <key>end</key>
1054
- <string>((?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b))</string>
1059
+ <string>((?&lt;=\})|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b))</string>
1055
1060
  <key>patterns</key>
1056
1061
  <array>
1057
1062
  <dict>
@@ -1143,7 +1148,7 @@
1143
1148
  </dict>
1144
1149
  </dict>
1145
1150
  <key>end</key>
1146
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1151
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1147
1152
  <key>patterns</key>
1148
1153
  <array>
1149
1154
  <dict>
@@ -1171,7 +1176,7 @@
1171
1176
  </dict>
1172
1177
  </dict>
1173
1178
  <key>end</key>
1174
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1179
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1175
1180
  <key>patterns</key>
1176
1181
  <array>
1177
1182
  <dict>
@@ -1270,7 +1275,7 @@
1270
1275
  </dict>
1271
1276
  </dict>
1272
1277
  <key>end</key>
1273
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1278
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1274
1279
  <key>patterns</key>
1275
1280
  <array>
1276
1281
  <dict>
@@ -1411,7 +1416,7 @@
1411
1416
  </dict>
1412
1417
  </dict>
1413
1418
  <key>end</key>
1414
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1419
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1415
1420
  <key>patterns</key>
1416
1421
  <array>
1417
1422
  <dict>
@@ -1472,7 +1477,7 @@
1472
1477
  </dict>
1473
1478
  </dict>
1474
1479
  <key>end</key>
1475
- <string>(?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1480
+ <string>(?&lt;=\})|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1476
1481
  <key>patterns</key>
1477
1482
  <array>
1478
1483
  <dict>
@@ -1508,7 +1513,7 @@
1508
1513
  </dict>
1509
1514
  </dict>
1510
1515
  <key>end</key>
1511
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1516
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1512
1517
  <key>patterns</key>
1513
1518
  <array>
1514
1519
  <dict>
@@ -1818,7 +1823,7 @@
1818
1823
  </dict>
1819
1824
  </dict>
1820
1825
  <key>end</key>
1821
- <string>(?=&gt;)|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1826
+ <string>(?=&gt;)|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1822
1827
  <key>endCaptures</key>
1823
1828
  <dict>
1824
1829
  <key>0</key>
@@ -1898,7 +1903,7 @@
1898
1903
  </dict>
1899
1904
  </dict>
1900
1905
  <key>end</key>
1901
- <string>(?=&gt;)|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1906
+ <string>(?=&gt;)|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1902
1907
  <key>patterns</key>
1903
1908
  <array>
1904
1909
  <dict>
@@ -1930,7 +1935,7 @@
1930
1935
  </dict>
1931
1936
  </dict>
1932
1937
  <key>end</key>
1933
- <string>(?=&gt;)|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1938
+ <string>(?=&gt;)|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1934
1939
  <key>patterns</key>
1935
1940
  <array>
1936
1941
  <dict>
@@ -1954,7 +1959,7 @@
1954
1959
  </dict>
1955
1960
  </dict>
1956
1961
  <key>end</key>
1957
- <string>(?=&gt;)|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1962
+ <string>(?=&gt;)|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
1958
1963
  <key>patterns</key>
1959
1964
  <array>
1960
1965
  <dict>
@@ -2014,7 +2019,7 @@
2014
2019
  </dict>
2015
2020
  </dict>
2016
2021
  <key>end</key>
2017
- <string>(?=&gt;)|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
2022
+ <string>(?=&gt;)|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
2018
2023
  <key>patterns</key>
2019
2024
  <array>
2020
2025
  <dict>
@@ -2095,7 +2100,7 @@
2095
2100
  </dict>
2096
2101
  </dict>
2097
2102
  <key>end</key>
2098
- <string>(?&lt;=\})|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
2103
+ <string>(?&lt;=\})|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
2099
2104
  <key>patterns</key>
2100
2105
  <array>
2101
2106
  <dict>
@@ -2128,7 +2133,7 @@
2128
2133
  </dict>
2129
2134
  </dict>
2130
2135
  <key>end</key>
2131
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
2136
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
2132
2137
  <key>patterns</key>
2133
2138
  <array>
2134
2139
  <dict>
@@ -2156,7 +2161,7 @@
2156
2161
  </dict>
2157
2162
  </dict>
2158
2163
  <key>end</key>
2159
- <string>(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
2164
+ <string>(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
2160
2165
  <key>patterns</key>
2161
2166
  <array>
2162
2167
  <dict>
@@ -2188,7 +2193,7 @@
2188
2193
  </dict>
2189
2194
  </dict>
2190
2195
  <key>end</key>
2191
- <string>(?=&gt;)|(?=,|;|@|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
2196
+ <string>(?=&gt;)|(?=,|;|@|#[a-z]|\)|\}|\b(?:extern)\b|\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\b)</string>
2192
2197
  <key>patterns</key>
2193
2198
  <array>
2194
2199
  <dict>