Libraryless. Click here for Pure Java version (2438L/16K/53K).
!7 sS input = [[ RULE WasLAB (("was|warum")&&("ist|bedeutet|heißt|soll|meint|nenn(t|en|st)")&&("lab")||("bla")) ]]; sS rules = [[ RULE <identifier> ( <exp> ) = rule // bracketing combines top and bottom ( <exp> ) = bracket <bracket> = expX // primitive expressions are also at top level <quoted> = expX // now come the lower levels <expX> = exp3 <exp2> & & <exp3> = and <exp3> = exp2 <and> = exp2 <exp1> | | <exp2> = or <exp2> = exp1 <or> = exp1 // lowest level <exp1> = exp ]]; p-tt { Explain e = explain(input, rules, "rule"); print("Parsed as: " + structForUser(e.fullMatchClasses())); printExplainTree2_filterClasses(e, func(S s) { !startsWith(s, "exp") }); }
Began life as a copy of #1008809
download show line numbers debug dex old transpilations
Travelled to 13 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
Snippet ID: | #1008817 |
Snippet name: | Test brackets + && + || + rule, bottom-up |
Eternal ID of this version: | #1008817/23 |
Text MD5: | 8854b725d40712f2b2f7b495452ddd05 |
Transpilation MD5: | 80f8504581e3c98448f019e8d28713fe |
Author: | stefan |
Category: | javax / parsing |
Type: | JavaX source code |
Public (visible to everyone): | Yes |
Archived (hidden from active list): | No |
Created/modified: | 2017-06-10 01:05:25 |
Source code size: | 718 bytes / 37 lines |
Pitched / IR pitched: | No / No |
Views / Downloads: | 529 / 743 |
Version history: | 22 change(s) |
Referenced in: | #1008837 - ctxParsingRules - for bottom-up parser |