@intend-it/parser 1.3.2 → 1.3.3
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/dist/index.js +39 -28
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -9145,6 +9145,7 @@ class CstParser extends Parser {
|
|
|
9145
9145
|
}
|
|
9146
9146
|
}
|
|
9147
9147
|
// src/tokens.ts
|
|
9148
|
+
var Identifier = createToken({ name: "Identifier", pattern: /[a-zA-Z_]\w*/ });
|
|
9148
9149
|
var LineComment = createToken({
|
|
9149
9150
|
name: "LineComment",
|
|
9150
9151
|
pattern: /\/\/[^\n\r]*/,
|
|
@@ -9155,20 +9156,20 @@ var BlockComment = createToken({
|
|
|
9155
9156
|
pattern: /\/\*[\s\S]*?\*\//,
|
|
9156
9157
|
group: Lexer.SKIPPED
|
|
9157
9158
|
});
|
|
9158
|
-
var Import = createToken({ name: "Import", pattern: /import
|
|
9159
|
-
var From = createToken({ name: "From", pattern: /from
|
|
9160
|
-
var Intent = createToken({ name: "Intent", pattern: /intent
|
|
9161
|
-
var Context = createToken({ name: "Context", pattern: /context
|
|
9162
|
-
var Export = createToken({ name: "Export", pattern: /export
|
|
9163
|
-
var Invariant = createToken({ name: "Invariant", pattern: /invariant
|
|
9164
|
-
var Step = createToken({ name: "Step", pattern: /step
|
|
9165
|
-
var Ensure = createToken({ name: "Ensure", pattern: /ensure
|
|
9166
|
-
var Const = createToken({ name: "Const", pattern: /const
|
|
9167
|
-
var Is = createToken({ name: "Is", pattern: /is
|
|
9168
|
-
var Defined = createToken({ name: "Defined", pattern: /defined
|
|
9169
|
-
var Entry = createToken({ name: "Entry", pattern: /entry
|
|
9170
|
-
var Let = createToken({ name: "Let", pattern: /let
|
|
9171
|
-
var Return = createToken({ name: "Return", pattern: /return
|
|
9159
|
+
var Import = createToken({ name: "Import", pattern: /import/, longer_alt: Identifier });
|
|
9160
|
+
var From = createToken({ name: "From", pattern: /from/, longer_alt: Identifier });
|
|
9161
|
+
var Intent = createToken({ name: "Intent", pattern: /intent/, longer_alt: Identifier });
|
|
9162
|
+
var Context = createToken({ name: "Context", pattern: /context/, longer_alt: Identifier });
|
|
9163
|
+
var Export = createToken({ name: "Export", pattern: /export/, longer_alt: Identifier });
|
|
9164
|
+
var Invariant = createToken({ name: "Invariant", pattern: /invariant/, longer_alt: Identifier });
|
|
9165
|
+
var Step = createToken({ name: "Step", pattern: /step/, longer_alt: Identifier });
|
|
9166
|
+
var Ensure = createToken({ name: "Ensure", pattern: /ensure/, longer_alt: Identifier });
|
|
9167
|
+
var Const = createToken({ name: "Const", pattern: /const/, longer_alt: Identifier });
|
|
9168
|
+
var Is = createToken({ name: "Is", pattern: /is/, longer_alt: Identifier });
|
|
9169
|
+
var Defined = createToken({ name: "Defined", pattern: /defined/, longer_alt: Identifier });
|
|
9170
|
+
var Entry = createToken({ name: "Entry", pattern: /entry/, longer_alt: Identifier });
|
|
9171
|
+
var Let = createToken({ name: "Let", pattern: /let/, longer_alt: Identifier });
|
|
9172
|
+
var Return = createToken({ name: "Return", pattern: /return/, longer_alt: Identifier });
|
|
9172
9173
|
var LCurly = createToken({ name: "LCurly", pattern: /{/ });
|
|
9173
9174
|
var RCurly = createToken({ name: "RCurly", pattern: /}/ });
|
|
9174
9175
|
var LParen = createToken({ name: "LParen", pattern: /\(/ });
|
|
@@ -9192,7 +9193,6 @@ var StringLiteral = createToken({
|
|
|
9192
9193
|
line_breaks: true
|
|
9193
9194
|
});
|
|
9194
9195
|
var NumberLiteral = createToken({ name: "NumberLiteral", pattern: /-?\d+(\.\d+)?/ });
|
|
9195
|
-
var Identifier = createToken({ name: "Identifier", pattern: /[a-zA-Z_]\w*/ });
|
|
9196
9196
|
var WhiteSpace = createToken({
|
|
9197
9197
|
name: "WhiteSpace",
|
|
9198
9198
|
pattern: /\s+/,
|
|
@@ -9350,18 +9350,27 @@ class IntendParser extends CstParser {
|
|
|
9350
9350
|
this.OPTION(() => {
|
|
9351
9351
|
this.CONSUME(FatArrow);
|
|
9352
9352
|
this.OR([
|
|
9353
|
-
{ ALT: () =>
|
|
9354
|
-
|
|
9353
|
+
{ ALT: () => {
|
|
9354
|
+
this.OR2([
|
|
9355
|
+
{ ALT: () => this.CONSUME(Const) },
|
|
9356
|
+
{ ALT: () => this.CONSUME(Let) }
|
|
9357
|
+
]);
|
|
9358
|
+
this.CONSUME(Identifier, { LABEL: "ResultVar" });
|
|
9359
|
+
this.OPTION2(() => {
|
|
9360
|
+
this.CONSUME(Colon);
|
|
9361
|
+
this.CONSUME2(Identifier, { LABEL: "ResultType" });
|
|
9362
|
+
this.OPTION3(() => {
|
|
9363
|
+
this.CONSUME(LBracket);
|
|
9364
|
+
this.CONSUME(RBracket);
|
|
9365
|
+
});
|
|
9366
|
+
});
|
|
9367
|
+
} },
|
|
9368
|
+
{ ALT: () => {
|
|
9369
|
+
this.CONSUME(LCurly);
|
|
9370
|
+
this.SUBRULE(this.body);
|
|
9371
|
+
this.CONSUME(RCurly);
|
|
9372
|
+
} }
|
|
9355
9373
|
]);
|
|
9356
|
-
this.CONSUME(Identifier, { LABEL: "ResultVar" });
|
|
9357
|
-
this.OPTION2(() => {
|
|
9358
|
-
this.CONSUME(Colon);
|
|
9359
|
-
this.CONSUME2(Identifier, { LABEL: "ResultType" });
|
|
9360
|
-
this.OPTION3(() => {
|
|
9361
|
-
this.CONSUME(LBracket);
|
|
9362
|
-
this.CONSUME(RBracket);
|
|
9363
|
-
});
|
|
9364
|
-
});
|
|
9365
9374
|
});
|
|
9366
9375
|
});
|
|
9367
9376
|
ensureStatement = this.RULE("ensureStatement", () => {
|
|
@@ -9377,7 +9386,8 @@ class IntendParser extends CstParser {
|
|
|
9377
9386
|
{ ALT: () => this.CONSUME(LessThan) },
|
|
9378
9387
|
{ ALT: () => this.CONSUME(Is) },
|
|
9379
9388
|
{ ALT: () => this.CONSUME(Defined) },
|
|
9380
|
-
{ ALT: () => this.CONSUME(StringLiteral) }
|
|
9389
|
+
{ ALT: () => this.CONSUME(StringLiteral) },
|
|
9390
|
+
{ ALT: () => this.CONSUME(NumberLiteral) }
|
|
9381
9391
|
]);
|
|
9382
9392
|
});
|
|
9383
9393
|
});
|
|
@@ -9605,7 +9615,8 @@ class IntendASTVisitor extends BaseIntendVisitor {
|
|
|
9605
9615
|
...ctx.LessThan || [],
|
|
9606
9616
|
...ctx.Is || [],
|
|
9607
9617
|
...ctx.Defined || [],
|
|
9608
|
-
...ctx.StringLiteral || []
|
|
9618
|
+
...ctx.StringLiteral || [],
|
|
9619
|
+
...ctx.NumberLiteral || []
|
|
9609
9620
|
];
|
|
9610
9621
|
tokens.sort((a, b) => a.startOffset - b.startOffset);
|
|
9611
9622
|
let expression = "";
|