summaryrefslogtreecommitdiff
path: root/modules/language/python/module/re
diff options
context:
space:
mode:
authorStefan Israelsson Tampe <stefan.itampe@gmail.com>2018-08-03 17:20:07 +0200
committerStefan Israelsson Tampe <stefan.itampe@gmail.com>2018-08-03 17:20:07 +0200
commit85d5763490601299daa660bef455b0eaae8b2560 (patch)
tree3d85991529f9f6f507c329106deb4c17085aa79a /modules/language/python/module/re
parent9cff626018531a50ab026e28a2354d252957fc2c (diff)
debuggings
Diffstat (limited to 'modules/language/python/module/re')
-rw-r--r--modules/language/python/module/re/parser.scm10
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)