Versions in this module Expand all Collapse all v1 v1.0.0 Jun 2, 2021 Changes in this version + var CheckIfMoney = regexp.MustCompile("([A-Z]{3} ?|^\\W)\\d+\\.?\\d*") + var Currencies = map[*Currency]struct + var GreatBritishPound = Currency + var UnitedStatesDollar = Currency + var ZeroCurrency = Currency + type Bank struct + AccountNo string + Bank string + SortCode string + func (b *Bank) KeyVal(keyVal string) (interface{}, error) + func (b *Bank) Set(value string) error + func (b *Bank) String() string + type Contact struct + Address []string + Company string + Email string + FirstName string + LastName string + PhoneNo string + func (c *Contact) KeyVal(keyVal string) (interface{}, error) + func (c *Contact) Set(value string) error + func (c *Contact) String() string + type Currency struct + Abbr string + Symbol string + func CurrencyFromAbbr(abbr string) *Currency + func CurrencyFromSymbol(symbol string) *Currency + type Date time.Time + func (d *Date) Set(value string) error + func (d *Date) String() string + type Invoice struct + Bank *Bank + DueDate *Date + From *Contact + InvoiceDate *Date + Items *Items + Number uint + To *Contact + func NewInvoice(number uint, from, to *Contact, items *Items, bank *Bank, ...) (*Invoice, error) + func (i *Invoice) Generate() (bytes.Buffer, error) + func (i *Invoice) String() string + type Item struct + Description string + HoursQuantity uint + Rate Money + Tax Money + func (i *Item) KeyVal(keyVal string) (interface{}, error) + func (i *Item) String() string + func (i *Item) Subtotal() *Money + type Items []*Item + func (is *Items) Set(value string) error + func (is *Items) String() string + func (is *Items) Total() *Money + type KeyValueFlags interface + KeyVal func(keyVal string) (interface{}, error) + type Money struct + Currency Currency + Money uint64 + func ParseMoney(s string) (*Money, error) + func ToMoney(f float64, currency Currency) *Money + func (m *Money) Add(f float64) *Money + func (m *Money) Float64() float64 + func (m *Money) Multiply(f float64) *Money + func (m *Money) String() string + func (m *Money) StringAbbr() string + func (m *Money) StringSymbol() string