From 0141e8e8c7f3e295d57990fdce6019e2d777aed0 Mon Sep 17 00:00:00 2001 From: Greg Brown Date: Wed, 18 Nov 2020 13:31:27 +0000 Subject: Convert concrete to abstract syntax tree --- src/ast/mod.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 src/ast/mod.rs (limited to 'src/ast/mod.rs') diff --git a/src/ast/mod.rs b/src/ast/mod.rs new file mode 100644 index 0000000..1fa7d23 --- /dev/null +++ b/src/ast/mod.rs @@ -0,0 +1,15 @@ +pub mod convert; + +type Ident = String; + +#[derive(Clone, Debug, Eq, PartialEq)] +pub enum Term { + Epsilon, + Bottom, + Literal(String), + Cat(Box, Box), + Alt(Box, Box), + Fix(Box), // Uses de Bruijn indices + Variable(usize), + Call(Ident, Vec), +} -- cgit v1.2.3