aboutsummaryrefslogtreecommitdiff
path: root/lexers
diff options
context:
space:
mode:
authorChristian Hesse <mail@eworm.de>2016-05-11 11:49:25 +0200
committerChristian Hesse <mail@eworm.de>2016-05-11 11:49:25 +0200
commitb59a693c0247612438613df6e559aae48f46d2ad (patch)
tree833eabcd61dc40c49c697b24d70f5d6a95ad52e1 /lexers
parente2e0162b5bfd2a5ef31f1d09fca4da8962d5d098 (diff)
downloadvis-b59a693c0247612438613df6e559aae48f46d2ad.tar.gz
vis-b59a693c0247612438613df6e559aae48f46d2ad.tar.xz
lexer: add delimiter-separated-values
Diffstat (limited to 'lexers')
-rw-r--r--lexers/dsv.lua17
1 files changed, 17 insertions, 0 deletions
diff --git a/lexers/dsv.lua b/lexers/dsv.lua
new file mode 100644
index 0000000..ad2b286
--- /dev/null
+++ b/lexers/dsv.lua
@@ -0,0 +1,17 @@
+-- Copyright 2016 Christian Hesse
+-- delimiter separated values LPeg lexer.
+
+local l = require('lexer')
+local token, word_match = l.token, l.word_match
+local P, R, S = lpeg.P, lpeg.R, lpeg.S
+
+local M = {_NAME = 'dsv'}
+
+-- Operators.
+local operator = token(l.OPERATOR, S(',;:|'))
+
+M._rules = {
+ {'operator', operator}
+}
+
+return M