Documentation
¶
Index ¶
- Constants
- func NewValidateError(firstFailure int, cause error) error
- type Error
- type Ledger
- func (l *Ledger) AddTransactions(txns []Transaction) error
- func (l *Ledger) Balances() (start, end time.Time, balances map[string][]decimal.Decimal)
- func (l *Ledger) LastTransactionTime() time.Time
- func (l *Ledger) String() string
- func (l *Ledger) Validate() error
- func (l *Ledger) WriteJSON(page, results int, w io.Writer)
- type Posting
- type Transaction
- type Transactions
Constants ¶
View Source
const (
DateFormat = "2006/01/02"
)
Variables ¶
This section is empty.
Functions ¶
func NewValidateError ¶
Types ¶
type Ledger ¶
type Ledger struct {
// contains filtered or unexported fields
}
func New ¶
func New(transactions []Transaction) (*Ledger, error)
func (*Ledger) AddTransactions ¶
func (l *Ledger) AddTransactions(txns []Transaction) error
AddTransactions attempts to add the provided transactions. Returns an error if the ledger fails validation (i.e. fail balance assertions). In the event of an error, attempts to add all valid transactions up to the error.
func (*Ledger) LastTransactionTime ¶
LastTransactionTime returns the last transactions Date field. Returns 0 if there are no transactions
type Posting ¶
type Posting struct {
Account string
Amount decimal.Decimal
Balance *decimal.Decimal `json:",omitempty"`
Comment string `json:",omitempty"`
Currency string
Tags map[string]string `json:",omitempty"`
}
func NewPostingFromString ¶
func (Posting) FormatTable ¶
type Transaction ¶
type Transaction struct {
Comment string `json:",omitempty"`
Date time.Time
Payee string
Postings []Posting
Tags map[string]string `json:",omitempty"`
}
Transaction is a strict(er) representation of a ledger transaction. The extra restrictions are used to verify correctness more easily.
func (Transaction) Balanced ¶
func (t Transaction) Balanced() bool
func (Transaction) ID ¶
func (t Transaction) ID() string
func (Transaction) String ¶
func (t Transaction) String() string
func (Transaction) Validate ¶
func (t Transaction) Validate() error
type Transactions ¶
type Transactions []Transaction
func (Transactions) Sort ¶
func (txns Transactions) Sort()
Click to show internal directories.
Click to hide internal directories.