gbas 0.1.0

An assembler for Game Boy
Documentation
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum Command {
    Directive(Directive),
    Mnemonic(Mnemonic),
}

impl From<Directive> for Command {
    fn from(directive: Directive) -> Self {
        Command::Directive(directive)
    }
}

impl From<Mnemonic> for Command {
    fn from(mnemonic: Mnemonic) -> Self {
        Command::Mnemonic(mnemonic)
    }
}

#[derive(Clone, Copy, Debug, PartialEq)]
pub enum Directive {
    Db,
    Ds,
    Dw,
    Include,
    Org,
}

#[derive(Clone, Copy, Debug, PartialEq)]
pub enum Mnemonic {
    Adc,
    Add,
    And,
    Bit,
    Call,
    Cp,
    Cpl,
    Daa,
    Dec,
    Di,
    Ei,
    Halt,
    Inc,
    Jp,
    Jr,
    Ld,
    Ldhl,
    Nop,
    Or,
    Pop,
    Push,
    Res,
    Ret,
    Reti,
    Rl,
    Rla,
    Rlc,
    Rlca,
    Rr,
    Rra,
    Rrc,
    Rrca,
    Rst,
    Sbc,
    Set,
    Sla,
    Sra,
    Srl,
    Stop,
    Sub,
    Swap,
    Xor,
}

#[derive(Clone, Copy, Debug, PartialEq)]
pub enum Operand {
    A,
    Af,
    B,
    Bc,
    C,
    D,
    De,
    E,
    H,
    Hl,
    Hld,
    Hli,
    L,
    Nc,
    Nz,
    Sp,
    Z,
}