luaur-code-gen 0.1.3

Native (A64/X64) code generation for Luau (Rust).
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use crate::enums::ir_const_kind::IrConstKind;
use crate::enums::ir_value_kind::IrValueKind;
use crate::records::ir_const::IrConst;

pub fn get_const_value_kind(constant: &IrConst) -> IrValueKind {
    match constant.kind {
        IrConstKind::Int => IrValueKind::Int,
        IrConstKind::Int64 => IrValueKind::Int64,
        IrConstKind::Uint => IrValueKind::Int,
        IrConstKind::Double => IrValueKind::Double,
        IrConstKind::Tag => IrValueKind::Tag,
        IrConstKind::Import => {
            debug_assert!(false, "Import constants cannot be used as IR values");
            IrValueKind::Unknown
        }
    }
}