Lines Matching refs:str
40 function balanced(a, b, str) {
42 a = maybeMatch(a, str);
44 b = maybeMatch(b, str);
45 var r = range(a, b, str);
49 pre: str.slice(0, r[0]),
50 body: str.slice(r[0] + a.length, r[1]),
51 post: str.slice(r[1] + b.length)
54 function maybeMatch(reg, str) {
55 var m = str.match(reg);
59 function range(a, b, str) {
61 var ai = str.indexOf(a);
62 var bi = str.indexOf(b, ai + 1);
69 left = str.length;
73 ai = str.indexOf(a, i + 1);
82 bi = str.indexOf(b, i + 1);
105 function numeric(str) {
106 return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0);
108 function escapeBraces(str) {
109 return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod);
111 function unescapeBraces(str) {
112 return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join(".");
114 function parseCommaParts(str) {
115 if (!str)
118 var m = balanced("{", "}", str);
120 return str.split(",");
134 function expandTop(str) {
135 if (!str)
137 if (str.substr(0, 2) === "{}") {
138 str = "\\{\\}" + str.substr(2);
140 return expand(escapeBraces(str), true).map(unescapeBraces);
142 function embrace(str) {
143 return "{" + str + "}";
154 function expand(str, isTop) {
156 var m = balanced("{", "}", str);
158 return [str];
173 str = m.pre + "{" + m.body + escClose + m.post;
174 return expand(str);
176 return [str];
737 parseAST_fn = function(str, ast, pos, opt) {
746 while (i2 < str.length) {
747 const c = str.charAt(i2++);
770 if (!opt.noext && isExtglobType(c) && str.charAt(i2) === "(") {
774 i2 = __privateMethod(_a = _AST, _parseAST, parseAST_fn).call(_a, str, ext2, i2, opt);
787 while (i < str.length) {
788 const c = str.charAt(i++);
811 if (isExtglobType(c) && str.charAt(i) === "(") {
816 i = __privateMethod(_b = _AST, _parseAST, parseAST_fn).call(_b, str, ext2, i, opt);
839 __privateSet(ast, _parts, [str.substring(pos - 1)]);