longdown 2024.4.13 → 2026.2.1
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 +38 -0
- package/lib/cli.js +4 -2
- package/lib/cljs-runtime/cljs.core.js +5658 -5658
- package/lib/cljs-runtime/cljs.core.js.map +1 -1
- package/lib/cljs-runtime/clojure.string.js +53 -53
- package/lib/cljs-runtime/clojure.string.js.map +1 -1
- package/lib/cljs-runtime/clojure.tools.cli.js +542 -542
- package/lib/cljs-runtime/clojure.tools.cli.js.map +1 -1
- package/lib/cljs-runtime/clojure.walk.js +21 -21
- package/lib/cljs-runtime/clojure.walk.js.map +1 -1
- package/lib/cljs-runtime/longdown.cli.js +73 -64
- package/lib/cljs-runtime/longdown.cli.js.map +1 -1
- package/lib/cljs-runtime/longdown.lib.js +140 -33
- package/lib/cljs-runtime/longdown.lib.js.map +1 -1
- package/lib/cljs-runtime/shadow.esm.esm_import$rehype_parse.js +5 -0
- package/lib/cljs-runtime/shadow.esm.esm_import$rehype_parse.js.map +9 -0
- package/lib/cljs-runtime/shadow.esm.esm_import$rehype_remark.js +5 -0
- package/lib/cljs-runtime/shadow.esm.esm_import$rehype_remark.js.map +9 -0
- package/lib/cljs-runtime/shadow.module.cli.prepend.js +4 -2
- package/package.json +6 -6
- package/lib/cljs-runtime/shadow.esm.esm_import$mdast_util_to_markdown$lib$unsafe.js +0 -5
- package/lib/cljs-runtime/shadow.esm.esm_import$mdast_util_to_markdown$lib$unsafe.js.map +0 -9
|
@@ -11,44 +11,44 @@ clojure.string.reverse = (function clojure$string$reverse(s){
|
|
|
11
11
|
return s.replace(clojure.string.re_surrogate_pair,"$2$1").split("").reverse().join("");
|
|
12
12
|
});
|
|
13
13
|
clojure.string.replace_all = (function clojure$string$replace_all(s,re,replacement){
|
|
14
|
-
var r = (new RegExp(re.source,(function (){var
|
|
15
|
-
var
|
|
16
|
-
var
|
|
14
|
+
var r = (new RegExp(re.source,(function (){var G__21414 = "g";
|
|
15
|
+
var G__21414__$1 = (cljs.core.truth_(re.ignoreCase)?[G__21414,"i"].join(''):G__21414);
|
|
16
|
+
var G__21414__$2 = (cljs.core.truth_(re.multiline)?[G__21414__$1,"m"].join(''):G__21414__$1);
|
|
17
17
|
if(cljs.core.truth_(re.unicode)){
|
|
18
|
-
return [
|
|
18
|
+
return [G__21414__$2,"u"].join('');
|
|
19
19
|
} else {
|
|
20
|
-
return
|
|
20
|
+
return G__21414__$2;
|
|
21
21
|
}
|
|
22
22
|
})()));
|
|
23
23
|
return s.replace(r,replacement);
|
|
24
24
|
});
|
|
25
25
|
clojure.string.replace_with = (function clojure$string$replace_with(f){
|
|
26
26
|
return (function() {
|
|
27
|
-
var
|
|
27
|
+
var G__21458__delegate = function (args){
|
|
28
28
|
var matches = cljs.core.drop_last.cljs$core$IFn$_invoke$arity$2((2),args);
|
|
29
29
|
if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(matches),(1))){
|
|
30
|
-
var
|
|
31
|
-
return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(
|
|
30
|
+
var G__21419 = cljs.core.first(matches);
|
|
31
|
+
return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__21419) : f.call(null,G__21419));
|
|
32
32
|
} else {
|
|
33
|
-
var
|
|
34
|
-
return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(
|
|
33
|
+
var G__21420 = cljs.core.vec(matches);
|
|
34
|
+
return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__21420) : f.call(null,G__21420));
|
|
35
35
|
}
|
|
36
36
|
};
|
|
37
|
-
var
|
|
37
|
+
var G__21458 = function (var_args){
|
|
38
38
|
var args = null;
|
|
39
39
|
if (arguments.length > 0) {
|
|
40
|
-
var
|
|
41
|
-
while (
|
|
42
|
-
args = new cljs.core.IndexedSeq(
|
|
40
|
+
var G__21462__i = 0, G__21462__a = new Array(arguments.length - 0);
|
|
41
|
+
while (G__21462__i < G__21462__a.length) {G__21462__a[G__21462__i] = arguments[G__21462__i + 0]; ++G__21462__i;}
|
|
42
|
+
args = new cljs.core.IndexedSeq(G__21462__a,0,null);
|
|
43
43
|
}
|
|
44
|
-
return
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
var args = cljs.core.seq(
|
|
48
|
-
return
|
|
44
|
+
return G__21458__delegate.call(this,args);};
|
|
45
|
+
G__21458.cljs$lang$maxFixedArity = 0;
|
|
46
|
+
G__21458.cljs$lang$applyTo = (function (arglist__21463){
|
|
47
|
+
var args = cljs.core.seq(arglist__21463);
|
|
48
|
+
return G__21458__delegate(args);
|
|
49
49
|
});
|
|
50
|
-
|
|
51
|
-
return
|
|
50
|
+
G__21458.cljs$core$IFn$_invoke$arity$variadic = G__21458__delegate;
|
|
51
|
+
return G__21458;
|
|
52
52
|
})()
|
|
53
53
|
;
|
|
54
54
|
});
|
|
@@ -119,8 +119,8 @@ return s.replace(match,replacement);
|
|
|
119
119
|
* separated by an optional separator.
|
|
120
120
|
*/
|
|
121
121
|
clojure.string.join = (function clojure$string$join(var_args){
|
|
122
|
-
var
|
|
123
|
-
switch (
|
|
122
|
+
var G__21426 = arguments.length;
|
|
123
|
+
switch (G__21426) {
|
|
124
124
|
case 1:
|
|
125
125
|
return clojure.string.join.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
|
|
126
126
|
|
|
@@ -140,10 +140,10 @@ var sb = (new goog.string.StringBuffer());
|
|
|
140
140
|
var coll__$1 = cljs.core.seq(coll);
|
|
141
141
|
while(true){
|
|
142
142
|
if((!((coll__$1 == null)))){
|
|
143
|
-
var
|
|
144
|
-
var
|
|
145
|
-
sb =
|
|
146
|
-
coll__$1 =
|
|
143
|
+
var G__21469 = sb.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(coll__$1)));
|
|
144
|
+
var G__21470 = cljs.core.next(coll__$1);
|
|
145
|
+
sb = G__21469;
|
|
146
|
+
coll__$1 = G__21470;
|
|
147
147
|
continue;
|
|
148
148
|
} else {
|
|
149
149
|
return sb.toString();
|
|
@@ -165,10 +165,10 @@ if((coll__$2 == null)){
|
|
|
165
165
|
sb.append(separator);
|
|
166
166
|
}
|
|
167
167
|
|
|
168
|
-
var
|
|
169
|
-
var
|
|
170
|
-
sb =
|
|
171
|
-
coll__$1 =
|
|
168
|
+
var G__21476 = sb;
|
|
169
|
+
var G__21477 = coll__$2;
|
|
170
|
+
sb = G__21476;
|
|
171
|
+
coll__$1 = G__21477;
|
|
172
172
|
continue;
|
|
173
173
|
} else {
|
|
174
174
|
return sb.toString();
|
|
@@ -202,8 +202,8 @@ clojure.string.pop_last_while_empty = (function clojure$string$pop_last_while_em
|
|
|
202
202
|
var v__$1 = v;
|
|
203
203
|
while(true){
|
|
204
204
|
if(("" === cljs.core.peek(v__$1))){
|
|
205
|
-
var
|
|
206
|
-
v__$1 =
|
|
205
|
+
var G__21481 = cljs.core.pop(v__$1);
|
|
206
|
+
v__$1 = G__21481;
|
|
207
207
|
continue;
|
|
208
208
|
} else {
|
|
209
209
|
return v__$1;
|
|
@@ -222,12 +222,12 @@ clojure.string.split_with_empty_regex = (function clojure$string$split_with_empt
|
|
|
222
222
|
if((((limit <= (0))) || ((limit >= ((2) + cljs.core.count(s)))))){
|
|
223
223
|
return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.vec(cljs.core.cons("",cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.seq(s)))),"");
|
|
224
224
|
} else {
|
|
225
|
-
var
|
|
226
|
-
var
|
|
227
|
-
if(cljs.core.truth_((
|
|
225
|
+
var pred__21427 = cljs.core._EQ__EQ_;
|
|
226
|
+
var expr__21428 = limit;
|
|
227
|
+
if(cljs.core.truth_((pred__21427.cljs$core$IFn$_invoke$arity$2 ? pred__21427.cljs$core$IFn$_invoke$arity$2((1),expr__21428) : pred__21427.call(null,(1),expr__21428)))){
|
|
228
228
|
return (new cljs.core.PersistentVector(null,1,(5),cljs.core.PersistentVector.EMPTY_NODE,[s],null));
|
|
229
229
|
} else {
|
|
230
|
-
if(cljs.core.truth_((
|
|
230
|
+
if(cljs.core.truth_((pred__21427.cljs$core$IFn$_invoke$arity$2 ? pred__21427.cljs$core$IFn$_invoke$arity$2((2),expr__21428) : pred__21427.call(null,(2),expr__21428)))){
|
|
231
231
|
return (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,["",s],null));
|
|
232
232
|
} else {
|
|
233
233
|
var c = (limit - (2));
|
|
@@ -242,8 +242,8 @@ return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.vec(cljs.core.cons
|
|
|
242
242
|
* Trailing empty strings are not returned - pass limit of -1 to return all.
|
|
243
243
|
*/
|
|
244
244
|
clojure.string.split = (function clojure$string$split(var_args){
|
|
245
|
-
var
|
|
246
|
-
switch (
|
|
245
|
+
var G__21431 = arguments.length;
|
|
246
|
+
switch (G__21431) {
|
|
247
247
|
case 2:
|
|
248
248
|
return clojure.string.split.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
|
|
249
249
|
|
|
@@ -273,12 +273,12 @@ return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1);
|
|
|
273
273
|
var m = cljs.core.re_find(re,s__$1);
|
|
274
274
|
if((!((m == null)))){
|
|
275
275
|
var index = s__$1.indexOf(m);
|
|
276
|
-
var
|
|
277
|
-
var
|
|
278
|
-
var
|
|
279
|
-
s__$1 =
|
|
280
|
-
limit__$1 =
|
|
281
|
-
parts =
|
|
276
|
+
var G__21520 = s__$1.substring((index + cljs.core.count(m)));
|
|
277
|
+
var G__21521 = (limit__$1 - (1));
|
|
278
|
+
var G__21522 = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1.substring((0),index));
|
|
279
|
+
s__$1 = G__21520;
|
|
280
|
+
limit__$1 = G__21521;
|
|
281
|
+
parts = G__21522;
|
|
282
282
|
continue;
|
|
283
283
|
} else {
|
|
284
284
|
return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1);
|
|
@@ -327,8 +327,8 @@ return "";
|
|
|
327
327
|
} else {
|
|
328
328
|
var ch = cljs.core.get.cljs$core$IFn$_invoke$arity$2(s,(index - (1)));
|
|
329
329
|
if(((("\n" === ch)) || (("\r" === ch)))){
|
|
330
|
-
var
|
|
331
|
-
index =
|
|
330
|
+
var G__21551 = (index - (1));
|
|
331
|
+
index = G__21551;
|
|
332
332
|
continue;
|
|
333
333
|
} else {
|
|
334
334
|
return s.substring((0),index);
|
|
@@ -366,8 +366,8 @@ buffer.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(replacement));
|
|
|
366
366
|
buffer.append(ch);
|
|
367
367
|
}
|
|
368
368
|
|
|
369
|
-
var
|
|
370
|
-
index =
|
|
369
|
+
var G__21555 = (index + (1));
|
|
370
|
+
index = G__21555;
|
|
371
371
|
continue;
|
|
372
372
|
}
|
|
373
373
|
break;
|
|
@@ -378,8 +378,8 @@ break;
|
|
|
378
378
|
* forward from from-index or nil if not found.
|
|
379
379
|
*/
|
|
380
380
|
clojure.string.index_of = (function clojure$string$index_of(var_args){
|
|
381
|
-
var
|
|
382
|
-
switch (
|
|
381
|
+
var G__21447 = arguments.length;
|
|
382
|
+
switch (G__21447) {
|
|
383
383
|
case 2:
|
|
384
384
|
return clojure.string.index_of.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
|
|
385
385
|
|
|
@@ -419,8 +419,8 @@ return result;
|
|
|
419
419
|
* searching backward from from-index or nil if not found.
|
|
420
420
|
*/
|
|
421
421
|
clojure.string.last_index_of = (function clojure$string$last_index_of(var_args){
|
|
422
|
-
var
|
|
423
|
-
switch (
|
|
422
|
+
var G__21451 = arguments.length;
|
|
423
|
+
switch (G__21451) {
|
|
424
424
|
case 2:
|
|
425
425
|
return clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
|
|
426
426
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["clojure/string.cljs"],"mappings":";;AAaA,6BAAA,7BAAOA,kEACJC;AADH,AAEE,qEAAA,9DAACC,+CAAOC,oCAAQF;;AAElB,AAAeG,mCACb,KAAAC,OAAA,yCAAA;AAEF;;;yBAAA,zBAAcC,0DAEXC;AAFH,OAGM,2CAAA,3CAAUA,UAAEH,jBACZ,OAAA,AAAA,yDAAA,mBAAA;;AAEN,6BAAA,7BAAOI,kEACJD,EAAEE,GAAGC;AADR,AAEE,IAAMC,IAAE,KAAAN,OAAY,AAAUI,UACV,iBAAAG,WAAA;IAAAA,eAAA,yDAAAA,vCACE,AAAcH,eAAI,CAAAG,SAAA;IADpBA,eAAA,4DAAAA,1CAEE,AAAaH,cAAI,CAAAG,aAAA;AAFnB,AAAA,oBAGE,AAAWH;AAAI,QAAAG,aAAA;;AAHjBA;;;AADpB,AAKE,OAAUL,UAAEI,EAAED;;AAElB,8BAAA,9BAAOG,oEACJC;AADH,AAEE;mCAAOC;AAAP,AACE,IAAMC,UAAQ,kDAAA,lDAACC,sDAAYF;AAA3B,AACE,GAAI,sEAAA,tEAACG,6CAAE,AAACC,gBAAMH;AACZ,IAAAI,WAAG,AAACC,gBAAML;AAAV,AAAA,0EAAAI,wBAAAA,1FAACN,kCAAAA,4CAAAA;;AACD,IAAAQ,WAAG,AAACC,cAAIP;AAAR,AAAA,0EAAAM,wBAAAA,1FAACR,kCAAAA,4CAAAA;;;;IAJAC;;;;EAAAA;;oCAAAA;;;IAAAA;0BAAAA;;;;;;;AAMT;;;;;;;;;;;;;;;;;;;;;yBAAA,zBAAcS,0DAoBXjB,EAAEkB,MAAMf;AApBX,AAqBE,GACE,OAASe;AACT,OAAUlB,UAAE,KAAAF,uCAAA,hCAAY,AAACqB,yBAAqBD,aAAYf;;AAF5D,GAIE,kBAAWL,jBAAUoB;AACrB,GAAI,OAASf;AACX,OAACF,2BAAYD,EAAEkB,MAAMf;;AACrB,OAACF,2BAAYD,EAAEkB,MAAM,AAACZ,4BAAaH;;;AAPvC,AASQ,MAAO,CAAA,kEAA2Be;;;;;AAE5C;;;;;;;;;;;;;;;;;;;;;;+BAAA,/BAAcE,sEAqBXpB,EAAEkB,MAAMf;AArBX,AAsBE,OAAUH,UAAEkB,MAAMf;;AAEpB,AAAA;;;;sBAAA,8BAAAkB,pDAAME;AAAN,AAAA,IAAAD,WAAA,AAAA;AAAA,AAAA,QAAAA;KAAA;AAAA,OAAAC,kDAAA,CAAA,UAAA;;;KAAA;AAAA,OAAAA,kDAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;;AAAA,MAAA,KAAAC,MAAA,CAAA,8DAAA,AAAA;;;;;AAAA,CAAA,oDAAA,pDAAMD,+DAGF7B;AAHJ,AAIG,IAAO+B,KAAG,KAAAC;IAAgBhC,WAAK,AAACiC,cAAIjC;;AAApC,AACE,GAAA,GAAQ,aAAA,ZAAMA;AACZ,eAAO,AAAG+B,UAAW,4CAAK,AAACX,gBAAMpB;eAAS,AAACkC,eAAKlC;;;;;AAChD,OAAmB+B;;;;;;AAP1B,CAAA,oDAAA,pDAAMF,+DAQFM,UAAUnC;AARd,AASG,IAAO+B,KAAG,KAAAC;IAAgBhC,WAAK,AAACiC,cAAIjC;;AAApC,AACE,GAAA,GAAQ,aAAA,ZAAMA;AACZ,AACE,AAAG+B,UAAW,4CAAK,AAACX,gBAAMpB;;AAC1B,IAAMA,WAAK,AAACkC,eAAKlC;AAAjB,AACE,GAAU,aAAA,ZAAMA;AAAhB;AAAA,AACE,AAAG+B,UAAWI;;;AAChB,eAAOJ;eAAG/B;;;;;AACd,OAAmB+B;;;;;;AAjB1B,CAAA,8CAAA,9CAAMF;;AAAN,AAmBA;;;4BAAA,5BAAcO,gEAEX9B;AAFH,AAGE,OAAcA;;AAEhB;;;4BAAA,5BAAc+B,gEAEX/B;AAFH,AAGE,OAAcA;;AAEhB;;;;4BAAA,5BAAcgC,gEAGXhC;AAHH,AAIE,OAACiC,uBAAmBjC;;AAWtB,sCAAA,tCAAOkC,oFACJC;AADH,AAEE,IAAOA,QAAEA;;AAAT,AACE,GAAI,CAAA,OAAe,AAACC,eAAKD;AACvB,eAAO,AAACE,cAAIF;;;;AACZA;;;;;AAEN,4CAAA,5CAAOG,gGACJC,MAAMJ;AADT,AAEE,GAAI,EAAK,CAAA,QAAMI,YAAO,CAAA,MAAK,AAAC3B,gBAAMuB;AAChC,OAACD,oCAAqBC;;AACtBA;;;AAEJ,wCAAA,xCAAOK,wFACJxC,EAAEuC;AADL,AAEE,GAAI,EAAI,UAAA,TAAIA,mBAAS,CAAIA,SAAM,CAAA,MAAK,AAAC3B,gBAAMZ;AACzC,kKAAA,3JAACyC,6CAAK,AAACzB,cAAI,eAAA,fAAC0B,kBAAQ,AAACC,4CAAIC,cAAI,AAACjB,cAAI3B;;AAClC,IAAA6C,cAAOE;IAAPD,cAAUP;AAAV,AAAA,oBAAA,CAAAM,4CAAAA,0CAAA,IAAAC,eAAAD,sBAAA,IAAAC;AACI,YAAAE,2BAAA,KAAA,EAAA,IAAA,AAAAA,sCAAA,IAAA,HAAQhD;;AADZ,oBAAA,CAAA6C,4CAAAA,0CAAA,IAAAC,eAAAD,sBAAA,IAAAC;AAEI,YAAAE,2BAAA,KAAA,EAAA,IAAA,AAAAA,sCAAA,CAAA,MAAA,HAAWhD;;AACb,IAAMiD,IAAE,SAAA,RAAGV;AAAX,AACE,OAACE,6CAAK,AAACzB,cAAI,eAAA,fAAC0B,kBAAQ,0IAAA,1IAACQ,+CAAO,AAAClC,cAAI,AAAC2B,4CAAIC,cAAI,AAACjB,cAAI3B,SAAOiD,KAAK,AAACE,6CAAKnD,EAAEiD;;;;;AAE3E,AAAA;;;;;uBAAA,+BAAA5B,tDAAMgC;AAAN,AAAA,IAAAD,WAAA,AAAA;AAAA,AAAA,QAAAA;KAAA;AAAA,OAAAC,mDAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;KAAA;AAAA,OAAAA,mDAAA,CAAA,UAAA,MAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;;AAAA,MAAA,KAAA7B,MAAA,CAAA,8DAAA,AAAA;;;;;AAAA,CAAA,qDAAA,rDAAM6B,gEAIFrD,EAAEE;AAJN,AAKK,+DAAA,xDAACoD,mDAAMtD,EAAEE;;;AALd,CAAA,qDAAA,rDAAMmD,gEAMArD,EAAEE,GAAGqC;AANX,AAOK,OAACD,0CAA2BC,MAC1B,EAAI,CAAA,aAAqB,4CAAKrC,MAC5B,AAACsC,sCAAuBxC,EAAEuC,OAC1B,EAAI,SAAA,RAAGA,cACL,AAACvB,cAAI,AAAQ,4CAAKhB,SAAGE,KACrB,iBAAOF,QAAEA;IACFuC,YAAMA;YADb,RAEOgB;;AAFP,AAGE,GAAI,CAAA,QAAMhB;AACR,OAACE,6CAAKc,MAAMvD;;AACZ,IAAMwD,IAAE,AAACC,kBAAQvD,GAAGF;AAApB,AACE,GAAA,GAAQ,MAAA,LAAMwD;AACZ,IAAME,QAAM,AAAU1D,cAAEwD;AAAxB,AACE,eAAO,AAAYxD,gBAAE,CAAG0D,QAAM,AAAC9C,gBAAM4C;eACnC,aAAA,ZAAKjB;eACL,AAACE,6CAAKc,MAAM,gBAAA,hBAAYvD,oBAAI0D;;;;;;AAChC,OAACjB,6CAAKc,MAAMvD;;;;;;;;AAvB/B,CAAA,+CAAA,/CAAMqD;;AAAN,AAyBA;;;6BAAA,7BAAMM,kEAEH3D;AAFH,AAGE,4DAAA,rDAACsD,mDAAMtD;;AAET;;;sBAAA,tBAAc4D,oDAEX5D;AAFH,AAGE,OAAC6D,iBAAa7D;;AAEhB;;;uBAAA,vBAAc8D,sDAEX9D;AAFH,AAGE,OAAC+D,qBAAiB/D;;AAEpB;;;uBAAA,vBAAcgE,sDAEXhE;AAFH,AAGE,OAACiE,sBAAkBjE;;AAErB;;;;8BAAA,9BAAckE,oEAGXlE;AAHH,AAIE,IAAO0D,QAAM,AAAU1D;;AAAvB,AACE,GAAI,WAAA,VAAO0D;AAAX;;AAEE,IAAMS,KAAG,AAACC,4CAAIpE,EAAE,SAAA,RAAK0D;AAArB,AACE,GAAI,EAAI,CAAA,SAAqBS,SACrB,CAAA,SAAoBA;AAC1B,eAAO,SAAA,RAAKT;;;;AACZ,mBAAA,ZAAY1D,gBAAI0D;;;;;;AAE1B;;;8BAAA,9BAAeW,oEAEZrE;AAFH,AAGE,OAACsE,gCAA4B,AAACC,qBAAiBvE;;AAEjD;;;;;;;wBAAA,xBAAcwE,wDAMXxE,EAAEyE;AANL,AAOE,IAAMC,SAAO,KAAAhD;IACPiD,SAAO,AAAU3E;AADvB,AAEE,YAAA,RAAO0D;;AAAP,AACE,GAAI,CAAIiB,WAAOjB;AACb,OAAGgB;;AACH,IAAMP,KAAG,AAASnE,SAAE0D;IACdvD,cAAY,AAACiE,4CAAIK,KAAKN;AAD5B,AAEE,GAAA,GAAQ,gBAAA,fAAMhE;AACZ,AAASuE,cAAO,4CAAKvE;;AACrB,AAASuE,cAAOP;;;AAClB,eAAO,SAAA,RAAKT;;;;;;;AAEtB,AAAA;;;;0BAAA,kCAAArC,5DAAMwD;AAAN,AAAA,IAAAD,WAAA,AAAA;AAAA,AAAA,QAAAA;KAAA;AAAA,OAAAC,sDAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;KAAA;AAAA,OAAAA,sDAAA,CAAA,UAAA,MAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;;AAAA,MAAA,KAAArD,MAAA,CAAA,8DAAA,AAAA;;;;;AAAA,CAAA,wDAAA,xDAAMqD,mEAGF7E,EAAE8E;AAHN,AAIG,IAAMC,SAAO,AAAU/E,UAAE8E;AAAzB,AACE,GAAI,UAAA,TAAMC;AAAV;;AAEEA;;;;AAPP,CAAA,wDAAA,xDAAMF,mEAQF7E,EAAE8E,MAAME;AARZ,AASG,IAAMD,SAAO,AAAU/E,UAAE8E,MAAME;AAA/B,AACE,GAAI,UAAA,TAAMD;AAAV;;AAEEA;;;;AAZP,CAAA,kDAAA,lDAAMF;;AAAN,AAcA,AAAA;;;;+BAAA,uCAAAxD,tEAAM6D;AAAN,AAAA,IAAAD,WAAA,AAAA;AAAA,AAAA,QAAAA;KAAA;AAAA,OAAAC,2DAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;KAAA;AAAA,OAAAA,2DAAA,CAAA,UAAA,MAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;;AAAA,MAAA,KAAA1D,MAAA,CAAA,8DAAA,AAAA;;;;;AAAA,CAAA,6DAAA,7DAAM0D,wEAGFlF,EAAE8E;AAHN,AAIG,IAAMC,SAAO,AAAc/E,cAAE8E;AAA7B,AACE,GAAI,UAAA,TAAMC;AAAV;;AAEEA;;;;AAPP,CAAA,6DAAA,7DAAMG,wEAQFlF,EAAE8E,MAAME;AARZ,AASG,IAAMD,SAAO,AAAc/E,cAAE8E,MAAME;AAAnC,AACE,GAAI,UAAA,TAAMD;AAAV;;AAEEA;;;;AAZP,CAAA,uDAAA,vDAAMG;;AAAN,AAcA;;;oCAAA,pCAAeC,gFAEZnF,EAAEoF;AAFL,AAGE,OAACC,uBAAmBrF,EAAEoF;;AAExB;;;kCAAA,lCAAeE,4EAEZtF,EAAEoF;AAFL,AAGE,OAACG,qBAAiBvF,EAAEoF;;AAEtB;;;iCAAA,jCAAeI,0EAEZxF,EAAEoF;AAFL,AAGE,OAACK,qBAAiBzF,EAAEoF","names":["clojure.string/seq-reverse","coll","cljs.core.reduce","cljs.core/conj","clojure.string/re-surrogate-pair","js/RegExp","clojure.string/reverse","s","clojure.string/replace-all","re","replacement","r","G__21430","clojure.string/replace-with","f","args","matches","cljs.core.drop_last","cljs.core._EQ_","cljs.core/count","G__21435","cljs.core/first","G__21436","cljs.core/vec","clojure.string/replace","match","goog.string/regExpEscape","clojure.string/replace-first","var_args","G__21442","clojure.string/join","js/Error","sb","js/goog.string.StringBuffer","cljs.core/seq","cljs.core/next","separator","clojure.string/upper-case","clojure.string/lower-case","clojure.string/capitalize","goog.string/capitalize","clojure.string/pop-last-while-empty","v","cljs.core/peek","cljs.core/pop","clojure.string/discard-trailing-if-needed","limit","clojure.string/split-with-empty-regex","cljs.core.conj","cljs.core/cons","cljs.core.map","cljs.core/str","pred__21443","expr__21444","cljs.core/==","cljs.core/PersistentVector","c","cljs.core.subvec","cljs.core.subs","G__21453","clojure.string/split","clojure.string.split","parts","m","cljs.core/re-find","index","clojure.string/split-lines","clojure.string/trim","goog.string/trim","clojure.string/triml","goog.string/trimLeft","clojure.string/trimr","goog.string/trimRight","clojure.string/trim-newline","ch","cljs.core.get","clojure.string/blank?","goog.string/isEmptyOrWhitespace","goog.string/makeSafe","clojure.string/escape","cmap","buffer","length","G__21467","clojure.string/index-of","value","result","from-index","G__21469","clojure.string/last-index-of","clojure.string/starts-with?","substr","goog.string/startsWith","clojure.string/ends-with?","goog.string/endsWith","clojure.string/includes?","goog.string/contains"],"sourcesContent":["; Copyright (c) Rich Hickey. All rights reserved.\n; The use and distribution terms for this software are covered by the\n; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)\n; which can be found in the file epl-v10.html at the root of this distribution.\n; By using this software in any fashion, you are agreeing to be bound by\n; the terms of this license.\n; You must not remove this notice, or any other, from this software.\n\n(ns clojure.string\n (:refer-clojure :exclude [replace reverse])\n (:require [goog.string :as gstring])\n (:import [goog.string StringBuffer]))\n\n(defn- seq-reverse\n [coll]\n (reduce conj () coll))\n\n(def ^:private re-surrogate-pair\n (js/RegExp. \"([\\\\uD800-\\\\uDBFF])([\\\\uDC00-\\\\uDFFF])\" \"g\"))\n\n(defn ^string reverse\n \"Returns s with its characters reversed.\"\n [s]\n (-> (.replace s re-surrogate-pair \"$2$1\")\n (.. (split \"\") (reverse) (join \"\"))))\n\n(defn- replace-all\n [s re replacement]\n (let [r (js/RegExp. (.-source re)\n (cond-> \"g\"\n (.-ignoreCase re) (str \"i\")\n (.-multiline re) (str \"m\")\n (.-unicode re) (str \"u\")))]\n (.replace s r replacement)))\n\n(defn- replace-with\n [f]\n (fn [& args]\n (let [matches (drop-last 2 args)]\n (if (= (count matches) 1)\n (f (first matches))\n (f (vec matches))))))\n\n(defn ^string replace\n \"Replaces all instance of match with replacement in s.\n\n match/replacement can be:\n\n string / string\n pattern / (string or function of match).\n\n See also replace-first.\n\n The replacement is literal (i.e. none of its characters are treated\n specially) for all cases above except pattern / string.\n\n For pattern / string, $1, $2, etc. in the replacement string are\n substituted with the string that matched the corresponding\n parenthesized group in the pattern.\n\n Example:\n (clojure.string/replace \\\"Almost Pig Latin\\\" #\\\"\\\\b(\\\\w)(\\\\w+)\\\\b\\\" \\\"$2$1ay\\\")\n -> \\\"lmostAay igPay atinLay\\\"\"\n [s match replacement]\n (cond\n (string? match)\n (.replace s (js/RegExp. (gstring/regExpEscape match) \"g\") replacement)\n\n (instance? js/RegExp match)\n (if (string? replacement)\n (replace-all s match replacement)\n (replace-all s match (replace-with replacement)))\n\n :else (throw (str \"Invalid match arg: \" match))))\n\n(defn ^string replace-first\n \"Replaces the first instance of match with replacement in s.\n\n match/replacement can be:\n\n string / string\n pattern / (string or function of match).\n\n See also replace.\n\n The replacement is literal (i.e. none of its characters are treated\n specially) for all cases above except pattern / string.\n\n For pattern / string, $1, $2, etc. in the replacement string are\n substituted with the string that matched the corresponding\n parenthesized group in the pattern.\n\n Example:\n (clojure.string/replace-first \\\"swap first two words\\\"\n #\\\"(\\\\w+)(\\\\s+)(\\\\w+)\\\" \\\"$3$2$1\\\")\n -> \\\"first swap two words\\\"\"\n [s match replacement]\n (.replace s match replacement))\n\n(defn join\n \"Returns a string of all elements in coll, as returned by (seq coll),\n separated by an optional separator.\"\n ([coll]\n (loop [sb (StringBuffer.) coll (seq coll)]\n (if-not (nil? coll)\n (recur (. sb (append (str (first coll)))) (next coll))\n ^string (.toString sb))))\n ([separator coll]\n (loop [sb (StringBuffer.) coll (seq coll)]\n (if-not (nil? coll)\n (do\n (. sb (append (str (first coll))))\n (let [coll (next coll)]\n (when-not (nil? coll)\n (. sb (append separator)))\n (recur sb coll)))\n ^string (.toString sb)))))\n\n(defn ^string upper-case\n \"Converts string to all upper-case.\"\n [s]\n (.toUpperCase s))\n\n(defn ^string lower-case\n \"Converts string to all lower-case.\"\n [s]\n (.toLowerCase s))\n\n(defn ^string capitalize\n \"Converts first character of the string to upper-case, all other\n characters to lower-case.\"\n [s]\n (gstring/capitalize s))\n\n;; The JavaScript split function takes a limit argument but the return\n;; value is not the same as the Java split function.\n;;\n;; Java: (.split \"a-b-c\" #\"-\" 2) => [\"a\" \"b-c\"]\n;; JavaScript: (.split \"a-b-c\" #\"-\" 2) => [\"a\" \"b\"]\n;;\n;; For consistency, the three arg version has been implemented to\n;; mimic Java's behavior.\n\n(defn- pop-last-while-empty\n [v]\n (loop [v v]\n (if (identical? \"\" (peek v))\n (recur (pop v))\n v)))\n\n(defn- discard-trailing-if-needed\n [limit v]\n (if (and (== 0 limit) (< 1 (count v)))\n (pop-last-while-empty v)\n v))\n\n(defn- split-with-empty-regex\n [s limit]\n (if (or (<= limit 0) (>= limit (+ 2 (count s))))\n (conj (vec (cons \"\" (map str (seq s)))) \"\")\n (condp == limit\n 1 (vector s)\n 2 (vector \"\" s)\n (let [c (- limit 2)]\n (conj (vec (cons \"\" (subvec (vec (map str (seq s))) 0 c))) (subs s c))))))\n\n(defn split\n \"Splits string on a regular expression. Optional argument limit is\n the maximum number of parts. Not lazy. Returns vector of the parts.\n Trailing empty strings are not returned - pass limit of -1 to return all.\"\n ([s re]\n (split s re 0))\n ([s re limit]\n (discard-trailing-if-needed limit\n (if (identical? \"/(?:)/\" (str re))\n (split-with-empty-regex s limit)\n (if (< limit 1)\n (vec (.split (str s) re))\n (loop [s s\n limit limit\n parts []]\n (if (== 1 limit)\n (conj parts s)\n (let [m (re-find re s)]\n (if-not (nil? m)\n (let [index (.indexOf s m)]\n (recur (.substring s (+ index (count m)))\n (dec limit)\n (conj parts (.substring s 0 index))))\n (conj parts s))))))))))\n\n(defn split-lines\n \"Splits s on \\\\n or \\\\r\\\\n. Trailing empty lines are not returned.\"\n [s]\n (split s #\"\\n|\\r\\n\"))\n\n(defn ^string trim\n \"Removes whitespace from both ends of string.\"\n [s]\n (gstring/trim s))\n\n(defn ^string triml\n \"Removes whitespace from the left side of string.\"\n [s]\n (gstring/trimLeft s))\n\n(defn ^string trimr\n \"Removes whitespace from the right side of string.\"\n [s]\n (gstring/trimRight s))\n\n(defn ^string trim-newline\n \"Removes all trailing newline \\\\n or return \\\\r characters from\n string. Similar to Perl's chomp.\"\n [s]\n (loop [index (.-length s)]\n (if (zero? index)\n \"\"\n (let [ch (get s (dec index))]\n (if (or (identical? \\newline ch)\n (identical? \\return ch))\n (recur (dec index))\n (.substring s 0 index))))))\n\n(defn ^boolean blank?\n \"True is s is nil, empty, or contains only whitespace.\"\n [s]\n (gstring/isEmptyOrWhitespace (gstring/makeSafe s)))\n\n(defn ^string escape\n \"Return a new string, using cmap to escape each character ch\n from s as follows:\n\n If (cmap ch) is nil, append ch to the new string.\n If (cmap ch) is non-nil, append (str (cmap ch)) instead.\"\n [s cmap]\n (let [buffer (StringBuffer.)\n length (.-length s)]\n (loop [index 0]\n (if (== length index)\n (. buffer (toString))\n (let [ch (.charAt s index)\n replacement (get cmap ch)]\n (if-not (nil? replacement)\n (.append buffer (str replacement))\n (.append buffer ch))\n (recur (inc index)))))))\n\n(defn index-of\n \"Return index of value (string or char) in s, optionally searching\n forward from from-index or nil if not found.\"\n ([s value]\n (let [result (.indexOf s value)]\n (if (neg? result)\n nil\n result)))\n ([s value from-index]\n (let [result (.indexOf s value from-index)]\n (if (neg? result)\n nil\n result))))\n\n(defn last-index-of\n \"Return last index of value (string or char) in s, optionally\n searching backward from from-index or nil if not found.\"\n ([s value]\n (let [result (.lastIndexOf s value)]\n (if (neg? result)\n nil\n result)))\n ([s value from-index]\n (let [result (.lastIndexOf s value from-index)]\n (if (neg? result)\n nil\n result))))\n\n(defn ^boolean starts-with?\n \"True if s starts with substr.\"\n [s substr]\n (gstring/startsWith s substr))\n\n(defn ^boolean ends-with?\n \"True if s ends with substr.\"\n [s substr]\n (gstring/endsWith s substr))\n\n(defn ^boolean includes?\n \"True if s includes substr.\"\n [s substr]\n (gstring/contains s substr))\n"],"x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"sources":["clojure/string.cljs"],"mappings":"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","names":["clojure.string/seq-reverse","coll","cljs.core.reduce","cljs.core/conj","clojure.string/re-surrogate-pair","js/RegExp","clojure.string/reverse","s","clojure.string/replace-all","re","replacement","r","G__21414","clojure.string/replace-with","f","args","matches","cljs.core.drop_last","cljs.core._EQ_","cljs.core/count","G__21419","cljs.core/first","G__21420","cljs.core/vec","clojure.string/replace","match","goog.string/regExpEscape","clojure.string/replace-first","var_args","G__21426","clojure.string/join","js/Error","sb","js/goog.string.StringBuffer","cljs.core/seq","cljs.core/next","separator","clojure.string/upper-case","clojure.string/lower-case","clojure.string/capitalize","goog.string/capitalize","clojure.string/pop-last-while-empty","v","cljs.core/peek","cljs.core/pop","clojure.string/discard-trailing-if-needed","limit","clojure.string/split-with-empty-regex","cljs.core.conj","cljs.core/cons","cljs.core.map","cljs.core/str","pred__21427","expr__21428","cljs.core/==","cljs.core/PersistentVector","c","cljs.core.subvec","cljs.core.subs","G__21431","clojure.string/split","clojure.string.split","parts","m","cljs.core/re-find","index","clojure.string/split-lines","clojure.string/trim","goog.string/trim","clojure.string/triml","goog.string/trimLeft","clojure.string/trimr","goog.string/trimRight","clojure.string/trim-newline","ch","cljs.core.get","clojure.string/blank?","goog.string/isEmptyOrWhitespace","goog.string/makeSafe","clojure.string/escape","cmap","buffer","length","G__21447","clojure.string/index-of","value","result","from-index","G__21451","clojure.string/last-index-of","clojure.string/starts-with?","substr","goog.string/startsWith","clojure.string/ends-with?","goog.string/endsWith","clojure.string/includes?","goog.string/contains"],"sourcesContent":["; Copyright (c) Rich Hickey. All rights reserved.\n; The use and distribution terms for this software are covered by the\n; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)\n; which can be found in the file epl-v10.html at the root of this distribution.\n; By using this software in any fashion, you are agreeing to be bound by\n; the terms of this license.\n; You must not remove this notice, or any other, from this software.\n\n(ns clojure.string\n (:refer-clojure :exclude [replace reverse])\n (:require [goog.string :as gstring])\n (:import [goog.string StringBuffer]))\n\n(defn- seq-reverse\n [coll]\n (reduce conj () coll))\n\n(def ^:private re-surrogate-pair\n (js/RegExp. \"([\\\\uD800-\\\\uDBFF])([\\\\uDC00-\\\\uDFFF])\" \"g\"))\n\n(defn ^string reverse\n \"Returns s with its characters reversed.\"\n [s]\n (-> (.replace s re-surrogate-pair \"$2$1\")\n (.. (split \"\") (reverse) (join \"\"))))\n\n(defn- replace-all\n [s re replacement]\n (let [r (js/RegExp. (.-source re)\n (cond-> \"g\"\n (.-ignoreCase re) (str \"i\")\n (.-multiline re) (str \"m\")\n (.-unicode re) (str \"u\")))]\n (.replace s r replacement)))\n\n(defn- replace-with\n [f]\n (fn [& args]\n (let [matches (drop-last 2 args)]\n (if (= (count matches) 1)\n (f (first matches))\n (f (vec matches))))))\n\n(defn ^string replace\n \"Replaces all instance of match with replacement in s.\n\n match/replacement can be:\n\n string / string\n pattern / (string or function of match).\n\n See also replace-first.\n\n The replacement is literal (i.e. none of its characters are treated\n specially) for all cases above except pattern / string.\n\n For pattern / string, $1, $2, etc. in the replacement string are\n substituted with the string that matched the corresponding\n parenthesized group in the pattern.\n\n Example:\n (clojure.string/replace \\\"Almost Pig Latin\\\" #\\\"\\\\b(\\\\w)(\\\\w+)\\\\b\\\" \\\"$2$1ay\\\")\n -> \\\"lmostAay igPay atinLay\\\"\"\n [s match replacement]\n (cond\n (string? match)\n (.replace s (js/RegExp. (gstring/regExpEscape match) \"g\") replacement)\n\n (instance? js/RegExp match)\n (if (string? replacement)\n (replace-all s match replacement)\n (replace-all s match (replace-with replacement)))\n\n :else (throw (str \"Invalid match arg: \" match))))\n\n(defn ^string replace-first\n \"Replaces the first instance of match with replacement in s.\n\n match/replacement can be:\n\n string / string\n pattern / (string or function of match).\n\n See also replace.\n\n The replacement is literal (i.e. none of its characters are treated\n specially) for all cases above except pattern / string.\n\n For pattern / string, $1, $2, etc. in the replacement string are\n substituted with the string that matched the corresponding\n parenthesized group in the pattern.\n\n Example:\n (clojure.string/replace-first \\\"swap first two words\\\"\n #\\\"(\\\\w+)(\\\\s+)(\\\\w+)\\\" \\\"$3$2$1\\\")\n -> \\\"first swap two words\\\"\"\n [s match replacement]\n (.replace s match replacement))\n\n(defn join\n \"Returns a string of all elements in coll, as returned by (seq coll),\n separated by an optional separator.\"\n ([coll]\n (loop [sb (StringBuffer.) coll (seq coll)]\n (if-not (nil? coll)\n (recur (. sb (append (str (first coll)))) (next coll))\n ^string (.toString sb))))\n ([separator coll]\n (loop [sb (StringBuffer.) coll (seq coll)]\n (if-not (nil? coll)\n (do\n (. sb (append (str (first coll))))\n (let [coll (next coll)]\n (when-not (nil? coll)\n (. sb (append separator)))\n (recur sb coll)))\n ^string (.toString sb)))))\n\n(defn ^string upper-case\n \"Converts string to all upper-case.\"\n [s]\n (.toUpperCase s))\n\n(defn ^string lower-case\n \"Converts string to all lower-case.\"\n [s]\n (.toLowerCase s))\n\n(defn ^string capitalize\n \"Converts first character of the string to upper-case, all other\n characters to lower-case.\"\n [s]\n (gstring/capitalize s))\n\n;; The JavaScript split function takes a limit argument but the return\n;; value is not the same as the Java split function.\n;;\n;; Java: (.split \"a-b-c\" #\"-\" 2) => [\"a\" \"b-c\"]\n;; JavaScript: (.split \"a-b-c\" #\"-\" 2) => [\"a\" \"b\"]\n;;\n;; For consistency, the three arg version has been implemented to\n;; mimic Java's behavior.\n\n(defn- pop-last-while-empty\n [v]\n (loop [v v]\n (if (identical? \"\" (peek v))\n (recur (pop v))\n v)))\n\n(defn- discard-trailing-if-needed\n [limit v]\n (if (and (== 0 limit) (< 1 (count v)))\n (pop-last-while-empty v)\n v))\n\n(defn- split-with-empty-regex\n [s limit]\n (if (or (<= limit 0) (>= limit (+ 2 (count s))))\n (conj (vec (cons \"\" (map str (seq s)))) \"\")\n (condp == limit\n 1 (vector s)\n 2 (vector \"\" s)\n (let [c (- limit 2)]\n (conj (vec (cons \"\" (subvec (vec (map str (seq s))) 0 c))) (subs s c))))))\n\n(defn split\n \"Splits string on a regular expression. Optional argument limit is\n the maximum number of parts. Not lazy. Returns vector of the parts.\n Trailing empty strings are not returned - pass limit of -1 to return all.\"\n ([s re]\n (split s re 0))\n ([s re limit]\n (discard-trailing-if-needed limit\n (if (identical? \"/(?:)/\" (str re))\n (split-with-empty-regex s limit)\n (if (< limit 1)\n (vec (.split (str s) re))\n (loop [s s\n limit limit\n parts []]\n (if (== 1 limit)\n (conj parts s)\n (let [m (re-find re s)]\n (if-not (nil? m)\n (let [index (.indexOf s m)]\n (recur (.substring s (+ index (count m)))\n (dec limit)\n (conj parts (.substring s 0 index))))\n (conj parts s))))))))))\n\n(defn split-lines\n \"Splits s on \\\\n or \\\\r\\\\n. Trailing empty lines are not returned.\"\n [s]\n (split s #\"\\n|\\r\\n\"))\n\n(defn ^string trim\n \"Removes whitespace from both ends of string.\"\n [s]\n (gstring/trim s))\n\n(defn ^string triml\n \"Removes whitespace from the left side of string.\"\n [s]\n (gstring/trimLeft s))\n\n(defn ^string trimr\n \"Removes whitespace from the right side of string.\"\n [s]\n (gstring/trimRight s))\n\n(defn ^string trim-newline\n \"Removes all trailing newline \\\\n or return \\\\r characters from\n string. Similar to Perl's chomp.\"\n [s]\n (loop [index (.-length s)]\n (if (zero? index)\n \"\"\n (let [ch (get s (dec index))]\n (if (or (identical? \\newline ch)\n (identical? \\return ch))\n (recur (dec index))\n (.substring s 0 index))))))\n\n(defn ^boolean blank?\n \"True is s is nil, empty, or contains only whitespace.\"\n [s]\n (gstring/isEmptyOrWhitespace (gstring/makeSafe s)))\n\n(defn ^string escape\n \"Return a new string, using cmap to escape each character ch\n from s as follows:\n\n If (cmap ch) is nil, append ch to the new string.\n If (cmap ch) is non-nil, append (str (cmap ch)) instead.\"\n [s cmap]\n (let [buffer (StringBuffer.)\n length (.-length s)]\n (loop [index 0]\n (if (== length index)\n (. buffer (toString))\n (let [ch (.charAt s index)\n replacement (get cmap ch)]\n (if-not (nil? replacement)\n (.append buffer (str replacement))\n (.append buffer ch))\n (recur (inc index)))))))\n\n(defn index-of\n \"Return index of value (string or char) in s, optionally searching\n forward from from-index or nil if not found.\"\n ([s value]\n (let [result (.indexOf s value)]\n (if (neg? result)\n nil\n result)))\n ([s value from-index]\n (let [result (.indexOf s value from-index)]\n (if (neg? result)\n nil\n result))))\n\n(defn last-index-of\n \"Return last index of value (string or char) in s, optionally\n searching backward from from-index or nil if not found.\"\n ([s value]\n (let [result (.lastIndexOf s value)]\n (if (neg? result)\n nil\n result)))\n ([s value from-index]\n (let [result (.lastIndexOf s value from-index)]\n (if (neg? result)\n nil\n result))))\n\n(defn ^boolean starts-with?\n \"True if s starts with substr.\"\n [s substr]\n (gstring/startsWith s substr))\n\n(defn ^boolean ends-with?\n \"True if s ends with substr.\"\n [s substr]\n (gstring/endsWith s substr))\n\n(defn ^boolean includes?\n \"True if s includes substr.\"\n [s substr]\n (gstring/contains s substr))\n"],"x_google_ignoreList":[0]}
|