@mojir/lits 2.0.7 → 2.0.8

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.
@@ -392,6 +392,7 @@ var AlgebraicOperators = [
392
392
  '<<', // left shift
393
393
  '>>', // signed right shift
394
394
  '>>>', // unsigned right shift
395
+ '++', // string concatenation
395
396
  '<', // less than
396
397
  '<=', // less than or equal
397
398
  '>', // greater than
@@ -3125,7 +3126,7 @@ var mathNormalExpression = {
3125
3126
  },
3126
3127
  };
3127
3128
 
3128
- var version = "2.0.7";
3129
+ var version = "2.0.8";
3129
3130
 
3130
3131
  var uuidTemplate = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx';
3131
3132
  var xyRegexp = /[xy]/g;
@@ -7075,24 +7076,26 @@ function parseString(tokenStream, parseState) {
7075
7076
  };
7076
7077
  }
7077
7078
 
7078
- var exponentiationPrecedence = 8;
7079
+ var exponentiationPrecedence = 9;
7079
7080
  function getPrecedence(operator) {
7080
7081
  var operatorSign = operator[1];
7081
7082
  switch (operatorSign) {
7082
7083
  case '.': // accessor
7083
- return 9;
7084
+ return 10;
7084
7085
  case '**': // exponentiation
7085
7086
  return exponentiationPrecedence;
7086
7087
  case '*': // multiplication
7087
7088
  case '/': // division
7088
7089
  case '%': // remainder
7089
- return 7;
7090
+ return 8;
7090
7091
  case '+': // addition
7091
7092
  case '-': // subtraction
7092
- return 6;
7093
+ return 7;
7093
7094
  case '<<': // left shift
7094
7095
  case '>>': // signed right shift
7095
7096
  case '>>>': // unsigned right shift
7097
+ return 6;
7098
+ case '++': // string concatenation
7096
7099
  return 5;
7097
7100
  case '<': // less than
7098
7101
  case '<=': // less than or equal
@@ -7190,6 +7193,11 @@ function fromBinaryAlgebraicToAstNode(operator, left, right) {
7190
7193
  return createNamedNormalExpressionNode('bit-shift-right', [left, right], token);
7191
7194
  case '>>>':
7192
7195
  return createNamedNormalExpressionNode('unsigned-bit-shift-right', [left, right], token);
7196
+ case '++': {
7197
+ var leftString = createNamedNormalExpressionNode('str', [left], token);
7198
+ var rightString = createNamedNormalExpressionNode('str', [right], token);
7199
+ return createNamedNormalExpressionNode('str', [leftString, rightString], token);
7200
+ }
7193
7201
  case '<':
7194
7202
  return createNamedNormalExpressionNode('<', [left, right], token);
7195
7203
  case '<=':
@@ -7468,6 +7476,8 @@ var AlgebraicParser = /** @class */ (function () {
7468
7476
  case 'or':
7469
7477
  case 'when':
7470
7478
  case 'when-not':
7479
+ case 'do':
7480
+ case 'throw':
7471
7481
  return {
7472
7482
  t: AstNodeType.SpecialExpression,
7473
7483
  n: name_1,
@@ -7484,13 +7494,11 @@ var AlgebraicParser = /** @class */ (function () {
7484
7494
  case 'defn':
7485
7495
  case 'defns':
7486
7496
  case 'try':
7487
- case 'throw':
7488
7497
  case 'recur':
7489
7498
  case 'loop':
7490
7499
  case 'time!':
7491
7500
  case 'doseq':
7492
7501
  case 'for':
7493
- case 'do':
7494
7502
  throw new Error("Special expression ".concat(name_1, " is not available in algebraic notation"));
7495
7503
  default:
7496
7504
  throw new Error("Unknown special expression: ".concat(name_1));
@@ -7923,7 +7931,7 @@ function parseToken(tokenStream, parseState) {
7923
7931
  }
7924
7932
 
7925
7933
  var polishIdentifierCharacterClass = '[\\w@%^?=!$<>+*/:-]';
7926
- var algebraicIdentifierCharacterClass = '[\\w$:!]';
7934
+ var algebraicIdentifierCharacterClass = '[\\w$:!?]';
7927
7935
  var algebraicIdentifierFirstCharacterClass = '[a-zA-Z_$]';
7928
7936
 
7929
7937
  var NO_MATCH = [0];
@@ -8230,13 +8238,11 @@ var algebraicReservedNamesRecord = {
8230
8238
  'defn': { value: null, forbidden: true },
8231
8239
  'defns': { value: null, forbidden: true },
8232
8240
  'try': { value: null, forbidden: true },
8233
- 'throw': { value: null, forbidden: true },
8234
8241
  'recur': { value: null, forbidden: true },
8235
8242
  'loop': { value: null, forbidden: true },
8236
8243
  'time!': { value: null, forbidden: true },
8237
8244
  'doseq': { value: null, forbidden: true },
8238
8245
  'for': { value: null, forbidden: true },
8239
- 'do': { value: null, forbidden: true },
8240
8246
  };
8241
8247
 
8242
8248
  var identifierRegExp = new RegExp(algebraicIdentifierCharacterClass);