aboutsummaryrefslogtreecommitdiffstats
path: root/lib/vcl/sublanguage.ml
diff options
context:
space:
mode:
Diffstat (limited to 'lib/vcl/sublanguage.ml')
-rw-r--r--lib/vcl/sublanguage.ml19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/vcl/sublanguage.ml b/lib/vcl/sublanguage.ml
new file mode 100644
index 0000000..f9ca629
--- /dev/null
+++ b/lib/vcl/sublanguage.ml
@@ -0,0 +1,19 @@
+module Make (NT : Nt.S) = struct
+ module Exec = Executor.Make (NT)
+
+ type configuration = unit
+ type ast = Ast.statement
+ type error = Exec.error
+
+ let name = "vcl"
+ let parse _ = Ok ()
+
+ let parse_sexp = function
+ | Sexplib.Sexp.(List [ Atom "use"; Atom branch ]) -> Ok (Ast.Use branch)
+ | sexp ->
+ Error (Exec.ParseError ("unrecognized vcl command: " ^ Sexplib.Sexp.to_string sexp))
+
+ let execute = Exec.execute
+
+ let sexp_of_error = Exec.sexp_of_error
+end