From b808e226ed25c7409edfc4fe5dc9ef9edafe66d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Wed, 24 Oct 2018 03:18:42 +0200 Subject: Initial commit --- patterns.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 patterns.scm (limited to 'patterns.scm') diff --git a/patterns.scm b/patterns.scm new file mode 100644 index 0000000..dc8ce98 --- /dev/null +++ b/patterns.scm @@ -0,0 +1,21 @@ +(define-module (patterns) + #:use-module (ice-9 peg) + #:export (file)) + +(define-peg-pattern field-part all + (* (or "\\\"" + (followed-by (or "|" "\"")) + peg-any))) + +(define-peg-pattern field all + (and (ignore "\"") + (* (and field-part (ignore (? (or "|"))))) + (ignore "\"")) ) + +(define-peg-pattern line all + (+ (and field + (ignore (? ",")) + (ignore (* " "))))) + +(define-peg-pattern file body + (+ (and line (ignore (? "\n"))))) -- cgit v1.2.3