Import Upstream version 20180207
[hcoop/debian/mlton.git] / lib / mlton / basic / sexp.sig
1 (* Copyright (C) 1999-2006 Henry Cejtin, Matthew Fluet, Suresh
2 * Jagannathan, and Stephen Weeks.
3 *
4 * MLton is released under a BSD-style license.
5 * See the file MLton-LICENSE for details.
6 *)
7
8 signature SEXP_STRUCTS =
9 sig
10 end
11
12 signature SEXP =
13 sig
14 include SEXP_STRUCTS
15
16 datatype t =
17 Atom of string
18 | List of t list
19 | String of string
20
21 datatype parseResult =
22 Eof
23 | Error of string
24 | Sexp of t
25
26 val fromString: string -> parseResult
27 val input: In.t -> parseResult
28 val layout: t -> Layout.t
29 val toString: t -> string
30 end