lib/pluck/src/toplevel/types.zig
daab053ee43316e1809a84551d573ddd1e5bf3d2
1 pub const ToplevelError = error{
2 OutOfMemory,
3 InvalidToplevelForm,
4 InvalidDefineForm,
5 InvalidDefineTypeForm,
6 InvalidQueryForm,
7 UndefinedReference,
8 ParseError,
9 FileNotFound,
10 IoError,
11 QueryFailed,
12 StdlibLoadFailed,
13 QueryConstructorNotImplemented,
14 InvalidQueryConstructorArgs,
15 UnrecognizedQueryConstructor,
16 };
17
18 pub const QueryOutcome = struct {
19 value_str: []const u8,
20 probability: f64,
21 };
22
23 pub const SourceLocation = struct {
24 start_line: u32,
25 start_col: u32,
26 end_line: u32,
27 end_col: u32,
28 };
29
30 pub const SourcePosition = struct {
31 line: u32,
32 column: u32,
33 offset: usize,
34 };
35
36 pub const SourceSpan = struct {
37 start: SourcePosition,
38 end: SourcePosition,
39 };
40
41 pub const QueryConstructorTypo = struct {
42 got: []const u8,
43 suggestion: []const u8,
44 };