Files
Glint/src/opcodes.rs

33 lines
898 B
Rust

pub const MAGIC_HEADER: [u8; 4] = *b"GLBC";
// direvctives
pub const OP_VERSION: u8 = 0x01;
pub const OP_STYLE: u8 = 0x02;
pub const OP_GLOBAL: u8 = 0x03;
pub const OP_SINGLETON: u8 = 0x04;
pub const OP_COMPONENT: u8 = 0x05;
pub const OP_LET: u8 = 0x06;
pub const OP_IF: u8 = 0x07;
pub const OP_EACH: u8 = 0x08;
pub const OP_ON: u8 = 0x09;
pub const OP_RHEI_BLK: u8 = 0x0A;
pub const OP_PROP_NULL: u8 = 0x28;
pub const OP_PROP_ARRAY: u8 = 0x29;
// elements managment
pub const OP_ELEM_PUSH: u8 = 0x10;
pub const OP_ELEM_POP: u8 = 0x11;
pub const OP_CONTENT: u8 = 0x12;
// types
pub const OP_PROP_STR: u8 = 0x20;
pub const OP_PROP_INT: u8 = 0x21;
pub const OP_PROP_FLOAT: u8 = 0x22;
pub const OP_PROP_BOOL: u8 = 0x23;
pub const OP_PROP_COLOR: u8 = 0x24;
pub const OP_PROP_FSPATH: u8 = 0x25;
pub const OP_PROP_VAR: u8 = 0x26;
pub const OP_PROP_RHEI: u8 = 0x27;
pub const OP_END_BLOCK: u8 = 0xFF;