Crate lumi[][src]

lumi

lumi is a double-entry accounting tool, and a library for parsing text-based ledger files.

Modules

parse

Parsing input text files and generating valid a Ledger.

utils

Useful functions for parsing and accounting.

Structs

AccountInfo

Contains the open/close date of an account, as well as the notes and documents.

AccountNote

Represents a note directive

Amount

A Decimal number plus the currency.

Error

Contains the full information of an error.

EventInfo

Represents an event directive.

Ledger

Represents a valid ledger containing all valid accounts and balanced transactions.

Location

Representing a location, line number and column number, in a source file.

Posting

A posting like Assets::Bank -100 JPY inside a Transaction.

Source

Represents a range in a source file. This struct is used to track the origins of any information in the generated Ledger, as well as for locating errors.

Transaction

Represents a transaction, or a pad directives, or a balance directive in the source file.

UnitCost

The cost basis information (unit cost and transaction date) used to identify a position in the running balances.

Enums

ErrorLevel

The level of an error. Any information in the source file resulting an ErrorLevel::Error are dropped.

ErrorType

Kinds of errors that lumi encountered during generating Ledger from files input text.

Price

The unit price (@) or total price (@@) of the amount in a posting.

TxnFlag

The flag of a Transaction.

Type Definitions

Account

A string wrapped in Arc representing the account name.

AccountDoc

Represents a document directive

BalanceSheet

Represents the final balances of all accounts.

Currency
Link
Meta

Represents the meta data attached to a commodity, a transaction, or a posting.

Narration
Payee
SrcFile

A string wrapped in Arc representing the source file path.

Tag