1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
use uuid::Uuid;

#[derive(Clone, Debug, PartialEq, Eq, Hash)]
pub enum Token {
    Comment(String),
    Ident(String),
    Int(i64),
    Str(String),
    // TODO: Float(i64, i64),
    Uuid(Uuid),
    Divide,
    Let,
    In,
    Perform,
    This,
    FromHere,
    TypeAnnotation,
    Trait,
    Attribute,
    Sum,
    Product,
    Minus,
    Comma,
    Dot,
    Apply,
    Reference,
    ArrayBegin,
    ArrayEnd,
    SetBegin,
    SetEnd,
    Hole,
    Infer,
    Handle,
    Continue,
    Lambda,
    Arrow,
    EArrow,
    Include,
    Import,
    Export,
    Brands,
    Type,
    NumberType,
    StringType,
    Brand(String),
    Alias,
    A,
    Card,
}