Kaba class Attr ed

...

Syntax ed

class Attr

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

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

    # constants
    let BLINK: Attr
    let BOLD: Attr
    let COLOR: Attr
    let NORMAL: Attr
    let REVERSE: Attr
    let UNDERLINE: Attr

Functions ed

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

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

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