gaia_assembler/types/mod.rs
1//! Gaia 汇编器核心类型定义
2
3use serde::{Deserialize, Serialize};
4
5/// Gaia 类型系统
6#[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
7pub enum GaiaType {
8 /// 8位有符号整数
9 Integer8,
10 /// 16位有符号整数
11 Integer16,
12 /// 32位有符号整数
13 Integer32,
14 /// 64位有符号整数
15 Integer64,
16 /// 32位浮点数
17 Float32,
18 /// 64位浮点数
19 Float64,
20 /// 布尔类型
21 Boolean,
22 /// 字符串类型
23 String,
24 /// 对象类型
25 Object,
26 /// 数组类型
27 Array(Box<GaiaType>),
28 /// 指针类型
29 Pointer(Box<GaiaType>),
30 /// 空类型
31 Void,
32 /// 通用整数类型(向后兼容)
33 Integer,
34 /// 通用浮点类型(向后兼容)
35 Float,
36 /// 通用双精度浮点类型(向后兼容)
37 Double,
38}