@cirru/writer.ts 0.1.3 → 0.1.5

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.
@@ -8,10 +8,14 @@ jobs:
8
8
  publish-npm:
9
9
  runs-on: ubuntu-latest
10
10
  steps:
11
- - uses: actions/checkout@v2
12
- - uses: actions/setup-node@v1
11
+ - uses: actions/checkout@v3
12
+
13
+ - uses: actions/checkout@v3
14
+
15
+ - uses: actions/setup-node@v3
13
16
  with:
14
- node-version: 12
17
+ node-version: 18
18
+ cache: "yarn"
15
19
  registry-url: https://registry.npmjs.org/
16
20
 
17
21
  - run: yarn && yarn test && yarn compile
@@ -4,27 +4,18 @@ on:
4
4
  pull_request: {}
5
5
  push:
6
6
  branches:
7
- - master
7
+ - main
8
8
 
9
9
  jobs:
10
10
  upload-assets:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
- - uses: actions/checkout@v2
13
+ - uses: actions/checkout@v3
14
14
 
15
- - name: Use Node.js
16
- uses: actions/setup-node@v1
17
-
18
- - name: Get yarn cache
19
- id: yarn-cache
20
- run: echo "::set-output name=dir::$(yarn cache dir)"
21
-
22
- - uses: actions/cache@v1
15
+ - uses: actions/setup-node@v3
23
16
  with:
24
- path: ${{ steps.yarn-cache.outputs.dir }}
25
- key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
26
- restore-keys: |
27
- ${{ runner.os }}-yarn-
17
+ node-version: 18
18
+ cache: "yarn"
28
19
 
29
20
  - run: yarn && yarn test
30
21
  name: Tests
package/lib/types.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export declare type CirruWriterNode = Array<CirruWriterNode> | string;
1
+ export type CirruWriterNode = Array<CirruWriterNode> | string;
2
2
  export declare enum WriterNodeKind {
3
3
  writerKindNil = "nil",
4
4
  writerKindLeaf = "leaf",
package/lib/types.js CHANGED
@@ -8,10 +8,11 @@ var WriterNodeKind;
8
8
  WriterNodeKind["writerKindSimpleExpr"] = "simple";
9
9
  WriterNodeKind["writerKindBoxedExpr"] = "boxed";
10
10
  WriterNodeKind["writerKindExpr"] = "expr";
11
- })(WriterNodeKind = exports.WriterNodeKind || (exports.WriterNodeKind = {}));
11
+ })(WriterNodeKind || (exports.WriterNodeKind = WriterNodeKind = {}));
12
12
  function isSimpleExpr(xs) {
13
13
  if (Array.isArray(xs)) {
14
- for (let x of xs) {
14
+ for (let idx = 0; idx < xs.length; idx++) {
15
+ let x = xs[idx];
15
16
  if (typeof x !== "string") {
16
17
  return false;
17
18
  }
package/lib/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AACA,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,yCAAuB,CAAA;IACvB,iDAA+B,CAAA;IAC/B,+CAA6B,CAAA;IAC7B,yCAAuB,CAAA;AACzB,CAAC,EANW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAMzB;AAED,SAAgB,YAAY,CAAC,EAAmB;IAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACrB,KAAK,IAAI,CAAC,IAAI,EAAE,EAAE;YAChB,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;gBACzB,OAAO,KAAK,CAAC;aACd;SACF;QAED,OAAO,IAAI,CAAC;KACb;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAZD,oCAYC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AACA,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,yCAAuB,CAAA;IACvB,iDAA+B,CAAA;IAC/B,+CAA6B,CAAA;IAC7B,yCAAuB,CAAA;AACzB,CAAC,EANW,cAAc,8BAAd,cAAc,QAMzB;AAED,SAAgB,YAAY,CAAC,EAAmB;IAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACrB,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;YACxC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YAChB,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;gBACzB,OAAO,KAAK,CAAC;aACd;SACF;QAED,OAAO,IAAI,CAAC;KACb;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAbD,oCAaC"}
package/lib/writer.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { CirruWriterNode } from "./types";
2
2
  export { CirruWriterNode };
3
- declare type WriterTreeOptions = {
3
+ type WriterTreeOptions = {
4
4
  useInline: boolean;
5
5
  };
6
6
  export declare function writeCirruCode(xs: CirruWriterNode, options?: WriterTreeOptions): string;
package/lib/writer.js CHANGED
@@ -6,7 +6,8 @@ const str_util_1 = require("./str-util");
6
6
  let allowedChars = "-~_@#$&%!?^*=+|\\/<>[]{}.,:;'";
7
7
  function isBoxed(xs) {
8
8
  if (Array.isArray(xs)) {
9
- for (let x of xs) {
9
+ for (let idx = 0; idx < xs.length; idx++) {
10
+ let x = xs[idx];
10
11
  if (typeof x === "string") {
11
12
  return false;
12
13
  }
@@ -18,7 +19,7 @@ function isBoxed(xs) {
18
19
  }
19
20
  }
20
21
  function isSimpleChar(x) {
21
- return str_util_1.isADigit(x) || str_util_1.isALetter(x);
22
+ return (0, str_util_1.isALetter)(x) || (0, str_util_1.isADigit)(x);
22
23
  }
23
24
  function isCharAllowed(x) {
24
25
  if (isSimpleChar(x)) {
@@ -43,7 +44,8 @@ function generateLeaf(xs) {
43
44
  }
44
45
  else {
45
46
  let allAllowed = true;
46
- for (let x of xs) {
47
+ for (let idx = 0; idx < xs.length; idx++) {
48
+ let x = xs[idx];
47
49
  if (!isCharAllowed(x)) {
48
50
  allAllowed = false;
49
51
  break;
@@ -63,21 +65,21 @@ function generateInlineExpr(xs) {
63
65
  for (let idx = 0; idx < xs.length; idx++) {
64
66
  let x = xs[idx];
65
67
  if (idx > 0) {
66
- result = result + charSpace;
68
+ result += charSpace;
67
69
  }
68
70
  let childForm = typeof x === "string" ? generateLeaf(x) : generateInlineExpr(x);
69
- result = result + childForm;
71
+ result += childForm;
70
72
  }
71
73
  }
72
74
  else {
73
- throw new Error("Unexpect token in gen list");
75
+ throw new Error(`Unexpect token in gen list: ${xs}`);
74
76
  }
75
77
  return result + charClose;
76
78
  }
77
79
  function renderSpaces(n) {
78
80
  let result = "";
79
81
  for (let i = 0; i < n; i++) {
80
- result = result + " ";
82
+ result += " ";
81
83
  }
82
84
  return result;
83
85
  }
@@ -92,7 +94,7 @@ function getNodeKind(cursor) {
92
94
  if (cursor.length === 0) {
93
95
  return types_1.WriterNodeKind.writerKindLeaf;
94
96
  }
95
- else if (types_1.isSimpleExpr(cursor)) {
97
+ else if ((0, types_1.isSimpleExpr)(cursor)) {
96
98
  return types_1.WriterNodeKind.writerKindSimpleExpr;
97
99
  }
98
100
  else if (isBoxed(cursor)) {
@@ -124,42 +126,55 @@ function generateTree(xs, insistHead, options, baseLevel, inTail) {
124
126
  // console.log("\nloop", prevKind, kind);
125
127
  // console.log("cursor", cursor);
126
128
  // console.log(JSON.stringify(result));
127
- let child; // mutable
128
- if (atTail) {
129
+ let child = ""; // mutable
130
+ if (typeof cursor === "string") {
131
+ child += generateLeaf(cursor);
132
+ }
133
+ else if (atTail) {
129
134
  if (typeof cursor === "string") {
130
135
  throw new Error("Expected list");
131
136
  }
132
137
  if (cursor.length === 0) {
133
- child = "$";
138
+ child += "$";
134
139
  }
135
140
  else {
136
- child = "$ " + generateTree(cursor, false, options, level, atTail);
141
+ child += "$ ";
142
+ child += generateTree(cursor, false, options, level, atTail);
137
143
  }
138
144
  }
139
- else if (kind === types_1.WriterNodeKind.writerKindLeaf) {
140
- child = generateLeaf(cursor);
141
- }
142
145
  else if (idx === 0 && insistHead) {
143
- child = generateInlineExpr(cursor);
146
+ child += generateInlineExpr(cursor);
147
+ }
148
+ else if (kind === types_1.WriterNodeKind.writerKindLeaf) {
149
+ if (idx === 0) {
150
+ child += renderNewline(level);
151
+ child += generateLeaf(cursor);
152
+ }
153
+ else {
154
+ child += generateLeaf(cursor);
155
+ }
144
156
  }
145
157
  else if (kind === types_1.WriterNodeKind.writerKindSimpleExpr) {
146
158
  if (prevKind === types_1.WriterNodeKind.writerKindLeaf) {
147
- child = generateInlineExpr(cursor);
159
+ child += generateInlineExpr(cursor);
148
160
  }
149
161
  else if (options.useInline && prevKind === types_1.WriterNodeKind.writerKindSimpleExpr) {
150
- child = " " + generateInlineExpr(cursor);
162
+ child += " ";
163
+ child += generateInlineExpr(cursor);
151
164
  }
152
165
  else {
153
- child = renderNewline(nextLevel) + generateTree(cursor, childInsistHead, options, nextLevel, false);
166
+ child += renderNewline(nextLevel);
167
+ child += generateTree(cursor, childInsistHead, options, nextLevel, false);
154
168
  }
155
169
  }
156
170
  else if (kind === types_1.WriterNodeKind.writerKindExpr) {
157
171
  let content = generateTree(cursor, childInsistHead, options, nextLevel, false);
158
172
  if (content.startsWith("\n")) {
159
- child = content;
173
+ child += content;
160
174
  }
161
175
  else {
162
- child = renderNewline(nextLevel) + content;
176
+ child += renderNewline(nextLevel);
177
+ child += content;
163
178
  }
164
179
  }
165
180
  else if (kind === types_1.WriterNodeKind.writerKindBoxedExpr) {
@@ -167,37 +182,42 @@ function generateTree(xs, insistHead, options, baseLevel, inTail) {
167
182
  if (prevKind === types_1.WriterNodeKind.writerKindNil ||
168
183
  prevKind === types_1.WriterNodeKind.writerKindLeaf ||
169
184
  prevKind === types_1.WriterNodeKind.writerKindSimpleExpr) {
170
- child = content;
185
+ child += content;
171
186
  }
172
187
  else {
173
- child = renderNewline(nextLevel) + content;
188
+ child += renderNewline(nextLevel);
189
+ child += content;
174
190
  }
175
191
  }
176
192
  else {
177
- throw new Error("Unpected condition");
193
+ throw new Error("Unexpected condition");
178
194
  }
179
195
  let bended = kind === types_1.WriterNodeKind.writerKindLeaf &&
180
196
  (prevKind === types_1.WriterNodeKind.writerKindBoxedExpr || prevKind === types_1.WriterNodeKind.writerKindExpr);
181
- let chunk; // mutable
182
197
  if (atTail) {
183
- chunk = " " + child;
198
+ result += " ";
199
+ result += child;
184
200
  }
185
201
  else if (prevKind === types_1.WriterNodeKind.writerKindLeaf && kind === types_1.WriterNodeKind.writerKindLeaf) {
186
- chunk = " " + child;
202
+ result += " ";
203
+ result += child;
187
204
  }
188
205
  else if (prevKind === types_1.WriterNodeKind.writerKindLeaf && kind === types_1.WriterNodeKind.writerKindSimpleExpr) {
189
- chunk = " " + child;
206
+ result += " ";
207
+ result += child;
190
208
  }
191
209
  else if (prevKind === types_1.WriterNodeKind.writerKindSimpleExpr && kind === types_1.WriterNodeKind.writerKindLeaf) {
192
- chunk = " " + child;
210
+ result += " ";
211
+ result += child;
193
212
  }
194
213
  else if (bended) {
195
- chunk = renderNewline(nextLevel) + ", " + child;
214
+ result += renderNewline(nextLevel);
215
+ result += ", ";
216
+ result += child;
196
217
  }
197
218
  else {
198
- chunk = child;
219
+ result += child;
199
220
  }
200
- result = result + chunk;
201
221
  // update writer states
202
222
  if (kind === types_1.WriterNodeKind.writerKindSimpleExpr) {
203
223
  if (idx === 0 && insistHead) {
@@ -224,8 +244,8 @@ function generateTree(xs, insistHead, options, baseLevel, inTail) {
224
244
  prevKind = kind;
225
245
  }
226
246
  if (bended) {
227
- bendedSize = bendedSize + 1;
228
- level = level + 1;
247
+ bendedSize += 1;
248
+ level += 1;
229
249
  }
230
250
  // console.log("chunk", JSON.stringify(chunk));
231
251
  // console.log("And result", JSON.stringify(result));
package/lib/writer.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"writer.js","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writer.js","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cirru/writer.ts",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "description": "Cirru Writer in TS",
5
5
  "main": "lib/writer.js",
6
6
  "author": "Cirru",
@@ -10,9 +10,9 @@
10
10
  "test": "ts-node tests/test-writer.ts"
11
11
  },
12
12
  "devDependencies": {
13
- "@types/node": "^14.14.30",
14
- "prettier": "^2.2.1",
15
- "ts-node": "^9.1.1",
16
- "typescript": "^4.1.5"
13
+ "@types/node": "^20.5.1",
14
+ "prettier": "^3.0.2",
15
+ "ts-node": "^10.9.1",
16
+ "typescript": "^5.1.6"
17
17
  }
18
18
  }