sundaysebasidian-byte/moonbean/ast does not have a README file

    Amount

    pub(all) struct Amount {
    number :
    Decimal

    currency : String
    }

    Amount::new

    Amount::to_string

    fn Amount::to_string(self : Amount) -> String

    Balance

    pub(all) struct Balance {
    account : String
    amount : Amount
    tolerance :
    Decimal
    ?
    }

    Close

    pub(all) struct Close {
    account : String
    }

    Commodity

    pub(all) struct Commodity {
    currency : String
    }

    Cost

    pub(all) struct Cost {
    number :
    Decimal

    currency : String
    date : Date?
    label : String?
    }

    Cost::new

    fn Cost::new(number :
    Decimal
    , currency : String, date : Date?, label : String?) -> Cost

    Cost::to_string

    fn Cost::to_string(self : Cost) -> String

    CostSpec

    pub(all) struct CostSpec {
    number_per :
    Decimal
    ?
    number_total :
    Decimal
    ?
    currency : String?
    date : Date?
    label : String?
    merge : Bool
    present : Bool
    }

    CostSpec::empty

    fn CostSpec::empty() -> CostSpec

    CostSpec::is_empty_spec

    fn CostSpec::is_empty_spec(self : CostSpec) -> Bool

    CostSpec::new_per

    fn CostSpec::new_per(number :
    Decimal
    , currency : String, date : Date?, label : String?) -> CostSpec

    CostSpec::new_total

    fn CostSpec::new_total(number :
    Decimal
    , currency : String) -> CostSpec

    CostSpec::to_string

    fn CostSpec::to_string(self : CostSpec) -> String

    Custom

    pub(all) struct Custom {
    custom_type : String
    values : Array[CustomValue]
    }

    CustomValue

    pub(all) enum CustomValue {
    CString(String)
    CBool(Bool)
    CDate(Date)
    CNumber(
    Decimal
    )
    CAmount(Amount)
    CAccount(String)
    CCurrency(String)
    CTag(String)
    }

    CustomValue::to_string

    fn CustomValue::to_string(self : CustomValue) -> String

    Date

    pub(all) struct Date {
    year : Int
    month : Int
    day : Int
    }

    Date::compare

    fn Date::compare(a : Date, b : Date) -> Int

    Date::day_of_year

    fn Date::day_of_year(self : Date) -> Int

    Date::days_in_month

    fn Date::days_in_month(year : Int, month : Int) -> Int

    Date::equal

    fn Date::equal(a : Date, b : Date) -> Bool

    Date::is_leap

    fn Date::is_leap(year : Int) -> Bool

    Date::less_equal

    fn Date::less_equal(a : Date, b : Date) -> Bool

    Date::less_than

    fn Date::less_than(a : Date, b : Date) -> Bool

    Date::new

    fn Date::new(year : Int, month : Int, day : Int) -> Date?

    Date::parse

    fn Date::parse(text : String) -> Date?

    Date::to_string

    fn Date::to_string(self : Date) -> String

    Diagnostic

    pub(all) struct Diagnostic {
    code : String
    message : String
    loc : Loc
    }

    Diagnostic::new

    fn Diagnostic::new(code : String, message : String, loc : Loc) -> Diagnostic

    Diagnostic::to_string

    fn Diagnostic::to_string(self : Diagnostic) -> String

    Directive

    pub(all) enum Directive {
    DOpen(Open)
    DClose(Close)
    DCommodity(Commodity)
    DPad(Pad)
    DBalance(Balance)
    DPrice(Price)
    DEvent(Event)
    DQuery(QueryDirective)
    DCustom(Custom)
    DNote(Note)
    DDocument(Document)
    DTransaction(Transaction)
    }

    Document

    pub(all) struct Document {
    account : String
    filename : String
    tags : Array[String]
    links : Array[String]
    }

    Entry

    pub(all) struct Entry {
    date : Date
    loc : Loc
    meta : Meta
    directive : Directive
    }

    Entry::is_transaction

    fn Entry::is_transaction(self : Entry) -> Bool

    Entry::new

    fn Entry::new(date : Date, loc : Loc, directive : Directive) -> Entry

    Event

    pub(all) struct Event {
    event_type : String
    description : String
    }

    Ledger

    pub(all) struct Ledger {
    entries : Array[Entry]
    errors : Array[Diagnostic]
    options : Options
    plugins : Array[Plugin]
    includes : Array[(String, Loc)]
    }

    Ledger::add_error

    fn Ledger::add_error(self : Ledger, error : Diagnostic) -> Unit

    Ledger::new

    fn Ledger::new() -> Ledger

    Loc

    pub(all) struct Loc {
    file : String
    line : Int
    }

    Loc::new

    fn Loc::new(file : String, line : Int) -> Loc

    Loc::to_string

    fn Loc::to_string(self : Loc) -> String

    Meta

    pub(all) struct Meta {
    entries : Array[(String, MetaValue)]
    }

    Meta::copy

    fn Meta::copy(self : Meta) -> Meta

    Meta::get

    fn Meta::get(self : Meta, key : String) -> MetaValue?

    Meta::has

    fn Meta::has(self : Meta, key : String) -> Bool

    Meta::is_empty

    fn Meta::is_empty(self : Meta) -> Bool

    Meta::new

    fn Meta::new() -> Meta

    Meta::remove

    fn Meta::remove(self : Meta, key : String) -> Unit

    Meta::set

    fn Meta::set(self : Meta, key : String, value : MetaValue) -> Unit

    MetaValue

    pub(all) enum MetaValue {
    MString(String)
    MNumber(
    Decimal
    )
    MDate(Date)
    MAccount(String)
    MCurrency(String)
    MTag(String)
    MBool(Bool)
    }

    MetaValue::to_string

    fn MetaValue::to_string(self : MetaValue) -> String

    Note

    pub(all) struct Note {
    account : String
    comment : String
    }

    Open

    pub(all) struct Open {
    account : String
    currencies : Array[String]
    booking : String?
    }

    Options

    pub(all) struct Options {
    title : String?
    booking_method : String
    tolerance_multiplier :
    Decimal

    inferred_tolerance_default : Map[String,
    Decimal
    ]
    infer_tolerance_from_cost : Bool
    account_rounding : String?
    operating_currencies : Array[String]
    documents : Array[String]
    display_precision : Map[String,
    Decimal
    ]
    render_commas : Bool
    raw : Array[(String, String)]
    }

    Options::add_raw

    fn Options::add_raw(self : Options, name : String, value : String) -> Unit

    Options::equity_account

    fn Options::equity_account(self : Options, option : String, default_suffix : String) -> String

    Resolves an equity subaccount option, including the configured equity root.

    Options::get

    fn Options::get(self : Options, name : String) -> String?

    Options::get_all

    fn Options::get_all(self : Options, name : String) -> Array[String]

    Options::new

    fn Options::new() -> Options

    Pad

    pub(all) struct Pad {
    account : String
    source_account : String
    }

    Plugin

    pub(all) struct Plugin {
    name : String
    config : String?
    loc : Loc
    }

    Posting

    pub(all) struct Posting {
    flag : String?
    account : String
    units : Amount?
    units_currency : String?
    cost : CostSpec?
    price : PriceAnno?
    meta : Meta
    loc : Loc
    }

    Posting::new

    fn Posting::new(account : String) -> Posting

    Price

    pub(all) struct Price {
    currency : String
    amount : Amount
    }

    PriceAnno

    pub(all) enum PriceAnno {
    PerUnit(Amount)
    Total(Amount)
    }

    PriceAnno::amount

    fn PriceAnno::amount(self : PriceAnno) -> Amount

    PriceAnno::to_string

    fn PriceAnno::to_string(self : PriceAnno) -> String

    QueryDirective

    pub(all) struct QueryDirective {
    name : String
    query : String
    }

    Transaction

    pub(all) struct Transaction {
    flag : String
    payee : String?
    narration : String
    tags : Array[String]
    links : Array[String]
    postings : Array[Posting]
    }

    Transaction::new

    fn Transaction::new(flag : String, payee : String?, narration : String, tags : Array[String], links : Array[String]) -> Transaction

    account_leaf

    fn account_leaf(account : String) -> String

    account_parent

    fn account_parent(account : String) -> String

    account_parts

    fn account_parts(account : String) -> Array[String]

    account_root

    fn account_root(account : String) -> String

    Source Files

    Powered by MoonBit

    Site sourceReport issueModulesSkillsBuild queueStatistics

    © 2026 mooncakes.io