Libraryless. Click here for Pure Java version (3213L/20K).
static ALQLLine agiBlue_parseQueryLine(S s) { LS tok = javaTokWithBrackets(s); // TODO: improve jmatch and use here if (eqGet(tok, 1, "return") && isIdentifier(get(tok, 3))) { LS l = tok_splitAtComma(subList(tok, 2)); if (l(l) == 1) ret ALQLReturn(first(l)); else ret ALQLReturnTuple(l); } T3S t = agiBlue_parseTriple(tok); if (t != null) ret ALQLTriple(t); if (lCodeTokens(tok) == 2 && eqGet(tok, 1, "lock")) { t = agiBlue_parseTriple(uncurly(tok.get(3))); if (t == null) fail("Bad lock statement: " + s); ret ALQLLockStatement(t); } if (lCodeTokens(tok) == 2 && eqGet(tok, 1, "page")) { S page = uncurly(tok.get(3)); S method = containsDollarVars(page) ? "flexMatchDollarVarsIC_first" : "eqic"; ret ALQLPage(page, method); } if (lCodeTokens(tok) == 3 && eqGet(tok, 1, "slice")) { S slice = unquote(tok.get(3)); S contents = uncurly(tok.get(5)); ret ALQLSlice(slice, agiBlue_parseQueryScript(print(+contents))); } fail("Can't parse ALQL line: " + s); }
Began life as a copy of #1024260
download show line numbers debug dex old transpilations
Travelled to 6 computer(s): bhatertpkbcr, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tvejysmllsmz, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1024261 |
| Snippet name: | agiBlue_parseQueryLine |
| Eternal ID of this version: | #1024261/12 |
| Text MD5: | 89f875274312bd5231fb0a97d080fa6a |
| Transpilation MD5: | 855db322ced48ceb9c4d41e3eaf0f070 |
| Author: | stefan |
| Category: | javax / agi.blue |
| Type: | JavaX fragment (include) |
| Public (visible to everyone): | Yes |
| Archived (hidden from active list): | No |
| Created/modified: | 2019-10-03 17:00:34 |
| Source code size: | 1104 bytes / 36 lines |
| Pitched / IR pitched: | No / No |
| Views / Downloads: | 510 / 687 |
| Version history: | 11 change(s) |
| Referenced in: | [show references] |