@spakhm/ts-parsec 0.4.1 → 0.4.2
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/base.d.ts +1 -1
- package/dist/base.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/package.json +1 -1
- package/src/base.ts +11 -11
package/dist/base.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export declare function toParser<T extends string>(p: T): parser<T>;
|
|
|
22
22
|
export declare function toParser<T>(p: parserlike<T>): parser<T>;
|
|
23
23
|
export declare const str: <T extends string>(match: T) => parser<T>;
|
|
24
24
|
export declare const lex: <T>(p: parserlike<T>) => parser<T>;
|
|
25
|
-
export declare const lexMode: (wsMode: ws_mode
|
|
25
|
+
export declare const lexMode: <T>(wsMode: ws_mode, p: parserlike<T>) => parser<T>;
|
|
26
26
|
export declare const ws: (wsMode: "drop_all" | "keep_newlines") => parser<{}>;
|
|
27
27
|
export declare const fwd: <T>(thunk: (() => parserlike<T>)) => parser<T>;
|
|
28
28
|
//# sourceMappingURL=base.d.ts.map
|
package/dist/base.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAKhD,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,CAAC,CAAC;CAAE,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,CAAC,CAAC;CAAE,CAAC;AAC9E,MAAM,MAAM,YAAY,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;CAAE,CAAC;AAEtE,eAAO,MAAM,EAAE,GAAI,CAAC,EAAE,KAAK,CAAC,KAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAA2B,CAAC;AAC1E,eAAO,MAAM,GAAG,GAAI,KAAK,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,MAAM,KAAG,MAAM,CAAC,KAAK,EAAE,YAAY,CAC3C,CAAC;AAK5C,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AACtE,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG;IACpC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;CAC9C,CAAC;AACF,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;AAK7D,wBAAgB,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AAC5D,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AA6BzD,eAAO,MAAM,GAAG,GAAI,CAAC,SAAS,MAAM,EAAE,OAAO,CAAC,KAAG,MAAM,CAAC,CAAC,CAQpD,CAAC;AAEN,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAKhD,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,CAAC,CAAC;CAAE,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,CAAC,CAAC;CAAE,CAAC;AAC9E,MAAM,MAAM,YAAY,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;CAAE,CAAC;AAEtE,eAAO,MAAM,EAAE,GAAI,CAAC,EAAE,KAAK,CAAC,KAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAA2B,CAAC;AAC1E,eAAO,MAAM,GAAG,GAAI,KAAK,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,MAAM,KAAG,MAAM,CAAC,KAAK,EAAE,YAAY,CAC3C,CAAC;AAK5C,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AACtE,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG;IACpC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;CAC9C,CAAC;AACF,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;AAK7D,wBAAgB,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AAC5D,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AA6BzD,eAAO,MAAM,GAAG,GAAI,CAAC,SAAS,MAAM,EAAE,OAAO,CAAC,KAAG,MAAM,CAAC,CAAC,CAQpD,CAAC;AAEN,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,cAWrC,CAAC;AAEH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,QAAQ,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,cAOxD,CAAC;AAEL,eAAO,MAAM,EAAE,GAAI,QAAQ,UAAU,GAAG,eAAe,eAqBnD,CAAC;AAKL,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC,CAAC,CAAC,KAAG,MAAM,CAAC,CAAC,CACL,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -33,13 +33,14 @@ var lex = (p) => toParser((source) => {
|
|
|
33
33
|
if (source.ws_mode === "keep_all") {
|
|
34
34
|
return toParser(p)(source);
|
|
35
35
|
} else {
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
const wsMode = source.ws_mode;
|
|
37
|
+
return lexMode("keep_all", (source2) => {
|
|
38
|
+
ws(wsMode)(source2);
|
|
38
39
|
return toParser(p)(source2);
|
|
39
40
|
})(source);
|
|
40
41
|
}
|
|
41
42
|
});
|
|
42
|
-
var lexMode = (wsMode
|
|
43
|
+
var lexMode = (wsMode, p) => toParser((source) => {
|
|
43
44
|
const prev_ws_mode = source.ws_mode;
|
|
44
45
|
source.ws_mode = wsMode;
|
|
45
46
|
const res = toParser(p)(source);
|
package/package.json
CHANGED
package/src/base.ts
CHANGED
|
@@ -67,22 +67,22 @@ export const lex = <T>(p: parserlike<T>) => toParser((source: stream) => {
|
|
|
67
67
|
// nested lex call, don't drop more whitespace
|
|
68
68
|
return toParser(p)(source);
|
|
69
69
|
} else {
|
|
70
|
-
|
|
71
|
-
|
|
70
|
+
const wsMode = source.ws_mode;
|
|
71
|
+
return lexMode('keep_all', (source: stream) => {
|
|
72
|
+
ws(wsMode)(source); // respect the current ws_mode
|
|
72
73
|
return toParser(p)(source);
|
|
73
74
|
})(source);
|
|
74
75
|
}
|
|
75
76
|
});
|
|
76
77
|
|
|
77
|
-
export const lexMode = (wsMode: ws_mode) =>
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
});
|
|
78
|
+
export const lexMode = <T>(wsMode: ws_mode, p: parserlike<T>) =>
|
|
79
|
+
toParser((source: stream) => {
|
|
80
|
+
const prev_ws_mode = source.ws_mode;
|
|
81
|
+
source.ws_mode = wsMode;
|
|
82
|
+
const res = toParser(p)(source);
|
|
83
|
+
source.ws_mode = prev_ws_mode;
|
|
84
|
+
return res;
|
|
85
|
+
});
|
|
86
86
|
|
|
87
87
|
export const ws = (wsMode: 'drop_all' | 'keep_newlines') =>
|
|
88
88
|
toParser((source: stream) => {
|