diff options
author | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-09-06 23:40:42 +0200 |
---|---|---|
committer | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-09-06 23:40:42 +0200 |
commit | 8733038b4de44a8cfb669420621597457eeef88a (patch) | |
tree | 9f7345b4b407ea0919320e17955b058cb2f2a5bc /modules/language/python/module/re/parser.scm | |
parent | b950c0d70a1d2c95da8d60aca7af02bc50542a2b (diff) |
email policy works mm
Diffstat (limited to 'modules/language/python/module/re/parser.scm')
-rw-r--r-- | modules/language/python/module/re/parser.scm | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/modules/language/python/module/re/parser.scm b/modules/language/python/module/re/parser.scm index 40469e2..765500d 100644 --- a/modules/language/python/module/re/parser.scm +++ b/modules/language/python/module/re/parser.scm @@ -14,7 +14,7 @@ (mk q+? #:+? "+?") (define subexpr (f-list #:sub - (f-seq (f-tag "(") (Ds ee) (f-tag ")")))) + (f-seq (f-tag "(") (Ds ee-) (f-tag ")")))) (define f-back (f-or (f-list #:class (mk-token (f-reg! "[AZbBdDsSwntr]"))) @@ -58,6 +58,7 @@ ")")) (define (bch f) (f-or! (f-seq (f-or! (f-tag "\\n") f-nl) (f-out (list->string (list #\newline)))) + (f-seq (f-char #\\) f-back) f)) (define bbody (f-cons (f-or! (f-list #:range (bch (mk-token (f-reg! "."))) @@ -83,7 +84,7 @@ (define f-bar (f-tag "|")) -(define qq (ch (f-reg "[][?+|*.$^()\\]"))) +(define qq (ch (f-reg "[[?+|*.$^()\\]"))) (define atom (f-or qq f-. flags2 choice subexpr anongroup namegroup incant coment 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))) @@ -93,7 +94,9 @@ (f* (f-or! f-com f-nl (f-reg "[ \t\r]"))) f-true))) (define line (f-cons* #:seq ws aatom ws (ff* (f-seq ws aatom ws) ))) +(define line- (f-cons* #:seq aatom (ff* (f-seq aatom) ))) (define ee (f-cons* #:or line (ff* (f-seq f-bar line)))) +(define ee- (f-cons* #:or line- (ff* (f-seq f-bar line-)))) (define pretty (make-fluid #f)) (define (parse-reg str) (with-fluids ((*whitespace* ws)) |