Skip to main content

luaur_ast/records/
ast_expr_table.rs

1#[repr(C)]
2#[derive(Debug, Clone)]
3#[allow(non_camel_case_types)]
4pub struct AstExprTable {
5    pub base: crate::records::ast_expr::AstExpr,
6    pub items: crate::records::ast_array::AstArray<crate::records::ast_expr_table::Item>,
7}
8
9#[repr(C)]
10#[derive(Debug, Clone)]
11pub struct Item {
12    pub kind: ItemKind,
13    pub key: *mut crate::records::ast_expr::AstExpr,
14    pub value: *mut crate::records::ast_expr::AstExpr,
15}
16
17#[repr(i32)]
18#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
19pub enum ItemKind {
20    List = 0,
21    Record = 1,
22    General = 2,
23}
24
25impl crate::rtti::AstNodeClass for AstExprTable {
26    const CLASS_INDEX: i32 = crate::rtti::ast_rtti_index("AstExprTable");
27}
28
29pub mod Item_ {
30    pub use super::ItemKind as Kind;
31}