time-to-botec/squiggle/node_modules/@rescript/std/lib/js/stringLabels.js
NunoSempere b6addc7f05 feat: add the node modules
Necessary in order to clearly see the squiggle hotwiring.
2022-12-03 12:44:49 +00:00

336 lines
7.0 KiB
JavaScript

'use strict';
var Caml = require("./caml.js");
var Bytes = require("./bytes.js");
var Curry = require("./curry.js");
var Belt_List = require("./belt_List.js");
var Caml_string = require("./caml_string.js");
var Caml_js_exceptions = require("./caml_js_exceptions.js");
function init(n, f) {
return Bytes.unsafe_to_string(Bytes.init(n, f));
}
function sub(s, ofs, len) {
return Bytes.unsafe_to_string(Bytes.sub(Bytes.unsafe_of_string(s), ofs, len));
}
var blit = Bytes.blit_string;
function concat(sep, xs) {
return Belt_List.toArray(xs).join(sep);
}
function iter(f, s) {
for(var i = 0 ,i_finish = s.length; i < i_finish; ++i){
Curry._1(f, s.codePointAt(i));
}
}
function iteri(f, s) {
for(var i = 0 ,i_finish = s.length; i < i_finish; ++i){
Curry._2(f, i, s.codePointAt(i));
}
}
function map(f, s) {
return Bytes.unsafe_to_string(Bytes.map(f, Bytes.unsafe_of_string(s)));
}
function mapi(f, s) {
return Bytes.unsafe_to_string(Bytes.mapi(f, Bytes.unsafe_of_string(s)));
}
function is_space(param) {
if (param > 13 || param < 9) {
return param === 32;
} else {
return param !== 11;
}
}
function trim(s) {
if (s === "" || !(is_space(s.codePointAt(0)) || is_space(s.codePointAt(s.length - 1 | 0)))) {
return s;
} else {
return Bytes.unsafe_to_string(Bytes.trim(Bytes.unsafe_of_string(s)));
}
}
function escaped(s) {
var needs_escape = function (_i) {
while(true) {
var i = _i;
if (i >= s.length) {
return false;
}
var match = s.codePointAt(i);
if (match < 32) {
return true;
}
if (match > 92 || match < 34) {
if (match >= 127) {
return true;
}
_i = i + 1 | 0;
continue ;
}
if (match > 91 || match < 35) {
return true;
}
_i = i + 1 | 0;
continue ;
};
};
if (needs_escape(0)) {
return Bytes.unsafe_to_string(Bytes.escaped(Bytes.unsafe_of_string(s)));
} else {
return s;
}
}
function index_rec(s, lim, _i, c) {
while(true) {
var i = _i;
if (i >= lim) {
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}
if (s.codePointAt(i) === c) {
return i;
}
_i = i + 1 | 0;
continue ;
};
}
function index(s, c) {
return index_rec(s, s.length, 0, c);
}
function index_rec_opt(s, lim, _i, c) {
while(true) {
var i = _i;
if (i >= lim) {
return ;
}
if (s.codePointAt(i) === c) {
return i;
}
_i = i + 1 | 0;
continue ;
};
}
function index_opt(s, c) {
return index_rec_opt(s, s.length, 0, c);
}
function index_from(s, i, c) {
var l = s.length;
if (i < 0 || i > l) {
throw {
RE_EXN_ID: "Invalid_argument",
_1: "String.index_from / Bytes.index_from",
Error: new Error()
};
}
return index_rec(s, l, i, c);
}
function index_from_opt(s, i, c) {
var l = s.length;
if (i < 0 || i > l) {
throw {
RE_EXN_ID: "Invalid_argument",
_1: "String.index_from_opt / Bytes.index_from_opt",
Error: new Error()
};
}
return index_rec_opt(s, l, i, c);
}
function rindex_rec(s, _i, c) {
while(true) {
var i = _i;
if (i < 0) {
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}
if (s.codePointAt(i) === c) {
return i;
}
_i = i - 1 | 0;
continue ;
};
}
function rindex(s, c) {
return rindex_rec(s, s.length - 1 | 0, c);
}
function rindex_from(s, i, c) {
if (i < -1 || i >= s.length) {
throw {
RE_EXN_ID: "Invalid_argument",
_1: "String.rindex_from / Bytes.rindex_from",
Error: new Error()
};
}
return rindex_rec(s, i, c);
}
function rindex_rec_opt(s, _i, c) {
while(true) {
var i = _i;
if (i < 0) {
return ;
}
if (s.codePointAt(i) === c) {
return i;
}
_i = i - 1 | 0;
continue ;
};
}
function rindex_opt(s, c) {
return rindex_rec_opt(s, s.length - 1 | 0, c);
}
function rindex_from_opt(s, i, c) {
if (i < -1 || i >= s.length) {
throw {
RE_EXN_ID: "Invalid_argument",
_1: "String.rindex_from_opt / Bytes.rindex_from_opt",
Error: new Error()
};
}
return rindex_rec_opt(s, i, c);
}
function contains_from(s, i, c) {
var l = s.length;
if (i < 0 || i > l) {
throw {
RE_EXN_ID: "Invalid_argument",
_1: "String.contains_from / Bytes.contains_from",
Error: new Error()
};
}
try {
index_rec(s, l, i, c);
return true;
}
catch (raw_exn){
var exn = Caml_js_exceptions.internalToOCamlException(raw_exn);
if (exn.RE_EXN_ID === "Not_found") {
return false;
}
throw exn;
}
}
function contains(s, c) {
return contains_from(s, 0, c);
}
function rcontains_from(s, i, c) {
if (i < 0 || i >= s.length) {
throw {
RE_EXN_ID: "Invalid_argument",
_1: "String.rcontains_from / Bytes.rcontains_from",
Error: new Error()
};
}
try {
rindex_rec(s, i, c);
return true;
}
catch (raw_exn){
var exn = Caml_js_exceptions.internalToOCamlException(raw_exn);
if (exn.RE_EXN_ID === "Not_found") {
return false;
}
throw exn;
}
}
function uppercase_ascii(s) {
return Bytes.unsafe_to_string(Bytes.uppercase_ascii(Bytes.unsafe_of_string(s)));
}
function lowercase_ascii(s) {
return Bytes.unsafe_to_string(Bytes.lowercase_ascii(Bytes.unsafe_of_string(s)));
}
function capitalize_ascii(s) {
return Bytes.unsafe_to_string(Bytes.capitalize_ascii(Bytes.unsafe_of_string(s)));
}
function uncapitalize_ascii(s) {
return Bytes.unsafe_to_string(Bytes.uncapitalize_ascii(Bytes.unsafe_of_string(s)));
}
var compare = Caml.string_compare;
function equal(a, b) {
return a === b;
}
function split_on_char(sep, s) {
var r = /* [] */0;
var j = s.length;
for(var i = s.length - 1 | 0; i >= 0; --i){
if (s.codePointAt(i) === sep) {
r = {
hd: sub(s, i + 1 | 0, (j - i | 0) - 1 | 0),
tl: r
};
j = i;
}
}
return {
hd: sub(s, 0, j),
tl: r
};
}
var make = Caml_string.make;
exports.make = make;
exports.init = init;
exports.sub = sub;
exports.blit = blit;
exports.concat = concat;
exports.iter = iter;
exports.iteri = iteri;
exports.map = map;
exports.mapi = mapi;
exports.trim = trim;
exports.escaped = escaped;
exports.index = index;
exports.index_opt = index_opt;
exports.rindex = rindex;
exports.rindex_opt = rindex_opt;
exports.index_from = index_from;
exports.index_from_opt = index_from_opt;
exports.rindex_from = rindex_from;
exports.rindex_from_opt = rindex_from_opt;
exports.contains = contains;
exports.contains_from = contains_from;
exports.rcontains_from = rcontains_from;
exports.uppercase_ascii = uppercase_ascii;
exports.lowercase_ascii = lowercase_ascii;
exports.capitalize_ascii = capitalize_ascii;
exports.uncapitalize_ascii = uncapitalize_ascii;
exports.compare = compare;
exports.equal = equal;
exports.split_on_char = split_on_char;
/* No side effect */