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

type merge_strategy = PreferLeft | PreferRight | RevertToAncestor
[@@deriving sexp]

type statement =
  | CreateBranch of { name: string; hash: string option [@sexp.option] }
  | Checkout of string
  | GetHead
  | GetBranchTip of string
  | UpdateBranchTip of { name: string; hash: string }
  | Merge of { left: string; right: string; strategy: merge_strategy }
[@@deriving sexp]