@danielx/civet 0.2.12 → 0.2.13

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/README.md CHANGED
@@ -46,6 +46,25 @@ createCompilerHost := (options: CompilerOptions, moduleSearchLocations : string[
46
46
  return fileCache[fileName]
47
47
  ```
48
48
 
49
+ ESBuild Plugin
50
+ ---
51
+
52
+ ```coffee
53
+ esbuild = require "esbuild"
54
+ civetPlugin = require "@danielx/civet/esbuild-plugin"
55
+
56
+ esbuild.build
57
+ entryPoints: ['source/main.civet']
58
+ bundle: true
59
+ platform: 'node'
60
+ outfile: 'dist/main.js'
61
+ plugins: [
62
+ civetPlugin
63
+ ]
64
+ .catch -> process.exit 1
65
+
66
+ ```
67
+
49
68
  Things Kept from CoffeeScript
50
69
  ---
51
70
 
package/dist/browser.js CHANGED
@@ -463,7 +463,8 @@ var Civet = (() => {
463
463
  ThinArrowFunction,
464
464
  Block,
465
465
  BracedBlock,
466
- SingleNestedBlockExpression,
466
+ SingleNestedExpression,
467
+ SingleNestedBlockStatement,
467
468
  NestedBlockExpressions,
468
469
  BlockExpression,
469
470
  Literal,
@@ -529,6 +530,8 @@ var Civet = (() => {
529
530
  Condition,
530
531
  ExpressionStatement,
531
532
  KeywordStatement,
533
+ MaybeNestedExpression,
534
+ Return,
532
535
  ImportDeclaration,
533
536
  ImportClause,
534
537
  NameSpaceImport,
@@ -757,8 +760,8 @@ var Civet = (() => {
757
760
  var $L107 = $L("break");
758
761
  var $L108 = $L("continue");
759
762
  var $L109 = $L("debugger");
760
- var $L110 = $L("return");
761
- var $L111 = $L("throw");
763
+ var $L110 = $L("throw");
764
+ var $L111 = $L("return");
762
765
  var $L112 = $L("import type");
763
766
  var $L113 = $L("from");
764
767
  var $L114 = $L("export");
@@ -1002,7 +1005,7 @@ var Civet = (() => {
1002
1005
  return FatArrow$0(state);
1003
1006
  }
1004
1007
  }
1005
- var ConciseBody$0 = $S(EOS, SingleNestedBlockExpression);
1008
+ var ConciseBody$0 = $S(EOS, SingleNestedBlockStatement);
1006
1009
  var ConciseBody$1 = $S($N($S($Q(_), $EXPECT($L11, fail, 'ConciseBody "{"'))), AssignmentExpression);
1007
1010
  var ConciseBody$2 = BracedBlock;
1008
1011
  function ConciseBody(state) {
@@ -1448,19 +1451,34 @@ var Civet = (() => {
1448
1451
  return BracedBlock$0(state) || BracedBlock$1(state) || BracedBlock$2(state);
1449
1452
  }
1450
1453
  }
1451
- var SingleNestedBlockExpression$0 = $TS($S(PushIndent, $E($S(Nested, StatementListItem)), $C($C($N($S(Nested, StatementListItem)), $S(PopIndent, $N($EXPECT($L31, fail, 'SingleNestedBlockExpression ""')))), PopIndent)), function($skip, $loc, $0, $1, $2, $3) {
1454
+ var SingleNestedExpression$0 = $TS($S(PushIndent, $E($S(Nested, Expression, StatementDelimiter)), $C($S($N($S(Nested, Expression)), PopIndent), $S(PopIndent, $N($EXPECT($L31, fail, 'SingleNestedExpression ""'))))), function($skip, $loc, $0, $1, $2, $3) {
1452
1455
  var exp = $2;
1453
1456
  if (exp)
1454
1457
  return exp;
1455
1458
  return $skip;
1456
1459
  });
1457
- function SingleNestedBlockExpression(state) {
1460
+ function SingleNestedExpression(state) {
1458
1461
  if (state.verbose)
1459
- console.log("ENTER:", "SingleNestedBlockExpression");
1462
+ console.log("ENTER:", "SingleNestedExpression");
1460
1463
  if (state.tokenize) {
1461
- return $TOKEN("SingleNestedBlockExpression", state, SingleNestedBlockExpression$0(state));
1464
+ return $TOKEN("SingleNestedExpression", state, SingleNestedExpression$0(state));
1462
1465
  } else {
1463
- return SingleNestedBlockExpression$0(state);
1466
+ return SingleNestedExpression$0(state);
1467
+ }
1468
+ }
1469
+ var SingleNestedBlockStatement$0 = $TS($S(PushIndent, $E($S(Nested, StatementListItem)), $C($C($N($S(Nested, StatementListItem)), $S(PopIndent, $N($EXPECT($L31, fail, 'SingleNestedBlockStatement ""')))), PopIndent)), function($skip, $loc, $0, $1, $2, $3) {
1470
+ var exp = $2;
1471
+ if (exp)
1472
+ return exp;
1473
+ return $skip;
1474
+ });
1475
+ function SingleNestedBlockStatement(state) {
1476
+ if (state.verbose)
1477
+ console.log("ENTER:", "SingleNestedBlockStatement");
1478
+ if (state.tokenize) {
1479
+ return $TOKEN("SingleNestedBlockStatement", state, SingleNestedBlockStatement$0(state));
1480
+ } else {
1481
+ return SingleNestedBlockStatement$0(state);
1464
1482
  }
1465
1483
  }
1466
1484
  var NestedBlockExpressions$0 = $TS($S(PushIndent, $Q(BlockExpression), PopIndent), function($skip, $loc, $0, $1, $2, $3) {
@@ -2242,14 +2260,33 @@ var Civet = (() => {
2242
2260
  var KeywordStatement$0 = $S($EXPECT($L107, fail, 'KeywordStatement "break"'), NonIdContinue);
2243
2261
  var KeywordStatement$1 = $S($EXPECT($L108, fail, 'KeywordStatement "continue"'), NonIdContinue);
2244
2262
  var KeywordStatement$2 = $S($EXPECT($L109, fail, 'KeywordStatement "debugger"'), NonIdContinue);
2245
- var KeywordStatement$3 = $S($EXPECT($L110, fail, 'KeywordStatement "return"'), NonIdContinue, Expression);
2246
- var KeywordStatement$4 = $S($EXPECT($L110, fail, 'KeywordStatement "return"'), NonIdContinue);
2247
- var KeywordStatement$5 = $S($EXPECT($L111, fail, 'KeywordStatement "throw"'), NonIdContinue, Expression);
2263
+ var KeywordStatement$3 = $S(Return, $E(MaybeNestedExpression));
2264
+ var KeywordStatement$4 = $S($EXPECT($L110, fail, 'KeywordStatement "throw"'), NonIdContinue, Expression);
2248
2265
  function KeywordStatement(state) {
2249
2266
  if (state.tokenize) {
2250
- return $TOKEN("KeywordStatement", state, KeywordStatement$0(state) || KeywordStatement$1(state) || KeywordStatement$2(state) || KeywordStatement$3(state) || KeywordStatement$4(state) || KeywordStatement$5(state));
2267
+ return $TOKEN("KeywordStatement", state, KeywordStatement$0(state) || KeywordStatement$1(state) || KeywordStatement$2(state) || KeywordStatement$3(state) || KeywordStatement$4(state));
2268
+ } else {
2269
+ return KeywordStatement$0(state) || KeywordStatement$1(state) || KeywordStatement$2(state) || KeywordStatement$3(state) || KeywordStatement$4(state);
2270
+ }
2271
+ }
2272
+ var MaybeNestedExpression$0 = $S($N(EOS), $Q(TrailingComment), Expression);
2273
+ var MaybeNestedExpression$1 = $S($Y(EOS), SingleNestedExpression);
2274
+ var MaybeNestedExpression$2 = $S($Y(EOS), ObjectLiteral);
2275
+ function MaybeNestedExpression(state) {
2276
+ if (state.tokenize) {
2277
+ return $TOKEN("MaybeNestedExpression", state, MaybeNestedExpression$0(state) || MaybeNestedExpression$1(state) || MaybeNestedExpression$2(state));
2278
+ } else {
2279
+ return MaybeNestedExpression$0(state) || MaybeNestedExpression$1(state) || MaybeNestedExpression$2(state);
2280
+ }
2281
+ }
2282
+ var Return$0 = $S($EXPECT($L111, fail, 'Return "return"'), NonIdContinue);
2283
+ function Return(state) {
2284
+ if (state.verbose)
2285
+ console.log("ENTER:", "Return");
2286
+ if (state.tokenize) {
2287
+ return $TOKEN("Return", state, Return$0(state));
2251
2288
  } else {
2252
- return KeywordStatement$0(state) || KeywordStatement$1(state) || KeywordStatement$2(state) || KeywordStatement$3(state) || KeywordStatement$4(state) || KeywordStatement$5(state);
2289
+ return Return$0(state);
2253
2290
  }
2254
2291
  }
2255
2292
  var ImportDeclaration$0 = $T($S($EXPECT($L112, fail, 'ImportDeclaration "import type"'), NonIdContinue, __, ImportClause, __, FromClause), function(value) {
@@ -3568,7 +3605,9 @@ var Civet = (() => {
3568
3605
  module.exports = {
3569
3606
  parse,
3570
3607
  compile: function(src, options) {
3571
- return gen(parse(src), options);
3608
+ return gen(parse(src, {
3609
+ filename: options != null ? options.filename : void 0
3610
+ }), options);
3572
3611
  },
3573
3612
  generate: gen
3574
3613
  };