diff options
author | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-08-03 17:20:07 +0200 |
---|---|---|
committer | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-08-03 17:20:07 +0200 |
commit | 85d5763490601299daa660bef455b0eaae8b2560 (patch) | |
tree | 3d85991529f9f6f507c329106deb4c17085aa79a /modules/language/python/module/re | |
parent | 9cff626018531a50ab026e28a2354d252957fc2c (diff) |
debuggings
Diffstat (limited to 'modules/language/python/module/re')
-rw-r--r-- | modules/language/python/module/re/parser.scm | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/modules/language/python/module/re/parser.scm b/modules/language/python/module/re/parser.scm index 89462ae..9ecc756 100644 --- a/modules/language/python/module/re/parser.scm +++ b/modules/language/python/module/re/parser.scm @@ -81,9 +81,13 @@ lookh lookh! rev rev! f-^ f-$ flags)) (define spec (f-list #:op atom (f-or! q+? q?? q*? q* q? q+ repn? repnm? repn repnm))) (define aatom (f-or! spec atom)) -(define line (f-cons* #:seq aatom (ff* aatom ))) +(define f-com (f-seq (f-tag "#") (f* (f-not (f-or! f-eof f-nl))))) +(define ws (f* (f-or! f-com f-nl (f-reg "[ \t\r]")))) +(define line (f-cons* #:seq ws aatom ws (ff* (f-seq ws aatom ws) ))) (define ee (f-cons* #:or line (ff* (f-seq f-bar line)))) - -(define (parse-reg str) (pk (parse str (f-seq ee f-eof)))) +(define (parse-reg str) + (pk + (with-fluids ((*whitespace* ws)) + (parse str (f-seq ee f-eof))))) (define e-matcher ee) |