aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ddl/ast.ml
blob: ee39edbe5ad4dbf5733906529aa6555cbcfc71a6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
open Sexplib.Std

type cardinality_spec =
  | Finite of int
  | AlephZero
  | Continuum
  | ConstrainedFinite
[@@deriving sexp]

type statement =
  | CreateDatabase of string
  | CreateRelation of { name : string; schema : (string * string) list }
  | RetractRelation of string
  | ClearRelation of string
  | RegisterDomain of { name : string; cardinality : cardinality_spec }
[@@deriving sexp]