alpaca_ir 0.0.1

AlpacaIR is a intermediate represenation meant to make making compilers easier.
Documentation
use super::core::AlpacaInst;

#[derive(Debug, PartialEq, Clone)]
pub enum AlpacaBasicType {
    Int8,
    Int16,
    Int32,
    Int64,
    Int128,
    
    Float16,
    Float32,
    Float64,
    Float128,
}

#[derive(Debug, PartialEq, Clone)]
pub enum AlpacaValueType {
    Int(bool, u64),
    Float(f64),
}

#[derive(Debug, PartialEq, Clone)]
pub enum AlpacaStorageType {
    Register(u32),
    Variable(&'static str),
}

#[derive(Debug, PartialEq, Clone)]
pub enum AlpacaValue {
    Number(AlpacaValueType),
    Storage(AlpacaStorageType),
    Inst(Box<AlpacaInst>),
}