rue_typing/ty.rs
1use num_bigint::BigInt;
2
3use crate::{Alias, Callable, Enum, Lazy, Struct, TypeId, Variant};
4
5#[derive(Debug, Clone)]
6pub enum Type {
7 Unknown,
8 Generic,
9 Never,
10 Any,
11 Bytes,
12 Bytes32,
13 PublicKey,
14 Int,
15 True,
16 False,
17 Nil,
18 Value(BigInt),
19 Pair(TypeId, TypeId),
20 Union(Vec<TypeId>),
21 Ref(TypeId),
22 Lazy(Lazy),
23 Alias(Alias),
24 Struct(Struct),
25 Callable(Callable),
26 Enum(Enum),
27 Variant(Variant),
28}