Kaba class Key ed

...

Syntax ed

class Key

    # functions
    func static pure all(type: Class&) -> Key[]
    func static pure from_int(i: i32) -> Key
    func static pure parse(label: string, type: Class&) -> Key

    # operators
    func pure __i32__() -> i32           # i32(Key) -> i32
    func static __assign__(a: Key, b: Key) # Key = Key
    func pure __add__(b: Key) -> Key     # Key + Key -> Key
    func static __iadd__(a: Key, b: Key) # Key += Key
    func pure __eq__(b: Key) -> bool     # Key == Key -> bool
    func pure __neq__(b: Key) -> bool    # Key __neq__ Key -> bool
    func pure __bitand__(b: Key) -> Key  # Key & Key -> Key
    func pure __bitor__(b: Key) -> Key   # Key | Key -> Key

    # constants
    let DOWN: Key
    let LEFT: Key
    let MINUS: Key
    let MOUSE: Key
    let PLUS: Key
    let RESIZE: Key
    let RIGHT: Key
    let UP: Key

Functions ed

func static pure all(type: Class&) -> Key[]
...

func static pure from_int(i: i32) -> Key
...

func static pure parse(label: string, type: Class&) -> Key
...