summaryrefslogtreecommitdiff
path: root/pest_consume/examples/csv/csv.pest
diff options
context:
space:
mode:
authorNadrieril2019-09-11 21:10:38 +0200
committerNadrieril2019-09-11 21:10:38 +0200
commit810a3d8066c2efed3f7c74cfb171d17988168080 (patch)
tree74424ede0dcdc81b9754a1e47239f06f1ecf316f /pest_consume/examples/csv/csv.pest
parentf1a4d315de5be701f29beb7d3c32af2e96f967b6 (diff)
Add an example to pest_consume
Diffstat (limited to 'pest_consume/examples/csv/csv.pest')
-rw-r--r--pest_consume/examples/csv/csv.pest15
1 files changed, 15 insertions, 0 deletions
diff --git a/pest_consume/examples/csv/csv.pest b/pest_consume/examples/csv/csv.pest
new file mode 100644
index 0000000..a67af8c
--- /dev/null
+++ b/pest_consume/examples/csv/csv.pest
@@ -0,0 +1,15 @@
+WHITESPACE = _{ " "+ }
+newline = _{ "\r\n" | "\n" }
+number = { "-"? ~ (ASCII_DIGIT | ".")+ }
+string = { (!"'" ~ ASCII)* }
+field = ${
+ number
+ | "'" ~ string ~ "'"
+}
+record = {
+ field ~ ("," ~ field)*
+ | ""
+}
+file = {
+ SOI ~ record ~ (newline ~ record)* ~ newline? ~ EOI
+}