money

package module
v0.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 6, 2023 License: MIT Imports: 6 Imported by: 0

README

money

Package to work with money in Go ensuring precision

Documentation

Index

Constants

View Source
const (
	CurrencyCodeBIF = "BIF"
	CurrencyCodeCLP = "CLP"
	CurrencyCodeDJF = "DJF"
	CurrencyCodeGNF = "GNF"
	CurrencyCodeISK = "ISK"
	CurrencyCodeJPY = "JPY"
	CurrencyCodeKMF = "KMF"
	CurrencyCodeKRW = "KRW"
	CurrencyCodePYG = "PYG"
	CurrencyCodeRWF = "RWF"
	CurrencyCodeUGX = "UGX"
	CurrencyCodeUYI = "UYI"
	CurrencyCodeVND = "VND"
	CurrencyCodeVUV = "VUV"
	CurrencyCodeXAF = "XAF"
	CurrencyCodeXOF = "XOF"
	CurrencyCodeXPF = "XPF"
)

0 Decimal Currency

View Source
const (
	CurrencyCodeAED = "AED"
	CurrencyCodeAFN = "AFN"
	CurrencyCodeALL = "ALL"
	CurrencyCodeAMD = "AMD"
	CurrencyCodeANG = "ANG"
	CurrencyCodeAOA = "AOA"
	CurrencyCodeARS = "ARS"
	CurrencyCodeAUD = "AUD"
	CurrencyCodeAWG = "AWG"
	CurrencyCodeAZN = "AZN"
	CurrencyCodeBAM = "BAM"
	CurrencyCodeBBD = "BBD"
	CurrencyCodeBDT = "BDT"
	CurrencyCodeBGN = "BGN"
	CurrencyCodeBMD = "BMD"
	CurrencyCodeBND = "BND"
	CurrencyCodeBOB = "BOB"
	CurrencyCodeBOV = "BOV"
	CurrencyCodeBRL = "BRL"
	CurrencyCodeBSD = "BSD"
	CurrencyCodeBTN = "BTN"
	CurrencyCodeBWP = "BWP"
	CurrencyCodeBYN = "BYN"
	CurrencyCodeBZD = "BZD"
	CurrencyCodeCAD = "CAD"
	CurrencyCodeCDF = "CDF"
	CurrencyCodeCHE = "CHE"
	CurrencyCodeCHF = "CHF"
	CurrencyCodeCHW = "CHW"
	CurrencyCodeCOP = "COP"
	CurrencyCodeCOU = "COU"
	CurrencyCodeCRC = "CRC"
	CurrencyCodeCUC = "CUC"
	CurrencyCodeCUP = "CUP"
	CurrencyCodeCVE = "CVE"
	CurrencyCodeCZK = "CZK"
	CurrencyCodeDKK = "DKK"
	CurrencyCodeDOP = "DOP"
	CurrencyCodeDZD = "DZD"
	CurrencyCodeEGP = "EGP"
	CurrencyCodeERN = "ERN"
	CurrencyCodeETB = "ETB"
	CurrencyCodeEUR = "EUR"
	CurrencyCodeFJD = "FJD"
	CurrencyCodeFKP = "FKP"
	CurrencyCodeGBP = "GBP"
	CurrencyCodeGEL = "GEL"
	CurrencyCodeGHS = "GHS"
	CurrencyCodeGIP = "GIP"
	CurrencyCodeGMD = "GMD"
	CurrencyCodeGTQ = "GTQ"
	CurrencyCodeGYD = "GYD"
	CurrencyCodeHKD = "HKD"
	CurrencyCodeHNL = "HNL"
	CurrencyCodeHTG = "HTG"
	CurrencyCodeHUF = "HUF"
	CurrencyCodeIDR = "IDR"
	CurrencyCodeILS = "ILS"
	CurrencyCodeINR = "INR"
	CurrencyCodeIRR = "IRR"
	CurrencyCodeJMD = "JMD"
	CurrencyCodeKES = "KES"
	CurrencyCodeKGS = "KGS"
	CurrencyCodeKHR = "KHR"
	CurrencyCodeKPW = "KPW"
	CurrencyCodeKYD = "KYD"
	CurrencyCodeKZT = "KZT"
	CurrencyCodeLAK = "LAK"
	CurrencyCodeLBP = "LBP"
	CurrencyCodeLKR = "LKR"
	CurrencyCodeLRD = "LRD"
	CurrencyCodeLSL = "LSL"
	CurrencyCodeMAD = "MAD"
	CurrencyCodeMDL = "MDL"
	CurrencyCodeMGA = "MGA"
	CurrencyCodeMKD = "MKD"
	CurrencyCodeMMK = "MMK"
	CurrencyCodeMNT = "MNT"
	CurrencyCodeMOP = "MOP"
	CurrencyCodeMRU = "MRU"
	CurrencyCodeMUR = "MUR"
	CurrencyCodeMVR = "MVR"
	CurrencyCodeMWK = "MWK"
	CurrencyCodeMXN = "MXN"
	CurrencyCodeMXV = "MXV"
	CurrencyCodeMYR = "MYR"
	CurrencyCodeMZN = "MZN"
	CurrencyCodeNAD = "NAD"
	CurrencyCodeNGN = "NGN"
	CurrencyCodeNIO = "NIO"
	CurrencyCodeNOK = "NOK"
	CurrencyCodeNPR = "NPR"
	CurrencyCodeNZD = "NZD"
	CurrencyCodePAB = "PAB"
	CurrencyCodePEN = "PEN"
	CurrencyCodePGK = "PGK"
	CurrencyCodePHP = "PHP"
	CurrencyCodePKR = "PKR"
	CurrencyCodePLN = "PLN"
	CurrencyCodeQAR = "QAR"
	CurrencyCodeRON = "RON"
	CurrencyCodeRSD = "RSD"
	CurrencyCodeCNY = "CNY"
	CurrencyCodeRUB = "RUB"
	CurrencyCodeSAR = "SAR"
	CurrencyCodeSBD = "SBD"
	CurrencyCodeSCR = "SCR"
	CurrencyCodeSDG = "SDG"
	CurrencyCodeSEK = "SEK"
	CurrencyCodeSGD = "SGD"
	CurrencyCodeSHP = "SHP"
	CurrencyCodeSLE = "SLE"
	CurrencyCodeSLL = "SLL"
	CurrencyCodeSOS = "SOS"
	CurrencyCodeSRD = "SRD"
	CurrencyCodeSSP = "SSP"
	CurrencyCodeSTN = "STN"
	CurrencyCodeSVC = "SVC"
	CurrencyCodeSYP = "SYP"
	CurrencyCodeSZL = "SZL"
	CurrencyCodeTHB = "THB"
	CurrencyCodeTJS = "TJS"
	CurrencyCodeTMT = "TMT"
	CurrencyCodeTOP = "TOP"
	CurrencyCodeTRY = "TRY"
	CurrencyCodeTTD = "TTD"
	CurrencyCodeTWD = "TWD"
	CurrencyCodeTZS = "TZS"
	CurrencyCodeUAH = "UAH"
	CurrencyCodeUSD = "USD"
	CurrencyCodeUSN = "USN"
	CurrencyCodeUYU = "UYU"
	CurrencyCodeUZS = "UZS"
	CurrencyCodeVED = "VED"
	CurrencyCodeVES = "VES"
	CurrencyCodeWST = "WST"
	CurrencyCodeXCD = "XCD"
	CurrencyCodeYER = "YER"
	CurrencyCodeZAR = "ZAR"
	CurrencyCodeZMW = "ZMW"
	CurrencyCodeZWL = "ZWL"
)

2 Decimal Currency

View Source
const (
	CurrencyCodeBHD = "BHD"
	CurrencyCodeIQD = "IQD"
	CurrencyCodeJOD = "JOD"
	CurrencyCodeKWD = "KWD"
	CurrencyCodeLYD = "LYD"
	CurrencyCodeOMR = "OMR"
	CurrencyCodeTND = "TND"
)

3 Decimal Currency

View Source
const (
	CurrencyCodeCLF = "CLF"
	CurrencyCodeUYW = "UYW"
)

4 Decimal Currency

Variables

This section is empty.

Functions

func CurrencyDecimals

func CurrencyDecimals(currencyCode string) (int, error)

Decimal places based on https://en.wikipedia.org/wiki/ISO_4217

Types

type Money

type Money struct {
	// contains filtered or unexported fields
}

Money holds a numbers to 4 decimal points of precision

func Add

func Add(m ...Money) Money

func Mul

func Mul(m ...Money) Money

func ParseFloat64

func ParseFloat64(f float64) Money

func ParseInt

func ParseInt(i int) Money

func ParseInt64

func ParseInt64(i int64) Money

func ParseString

func ParseString(s string) (Money, error)

func Quo

func Quo(m ...Money) (Money, error)

func Sub

func Sub(m ...Money) Money

func (Money) CurrencyFloat64 added in v0.0.2

func (m Money) CurrencyFloat64(currencyCode string) (float64, error)

CurrencyFloat64 rounds a decimal to the correct currency precision

func (Money) CurrencyString added in v0.0.2

func (m Money) CurrencyString(currencyCode string) (string, error)

CurrencyString returns a string rounded and formatted for a currency code

func (Money) Equal

func (m Money) Equal(x Money) bool

func (Money) EqualCurrencyRounded added in v0.0.6

func (m Money) EqualCurrencyRounded(x Money, currencyCode string) error

func (Money) Float64

func (m Money) Float64() float64

func (Money) MarshalJSON

func (m Money) MarshalJSON() ([]byte, error)

func (*Money) Scan

func (m *Money) Scan(src interface{}) error

Scan implements the sql.Scanner interface

func (Money) String

func (m Money) String() string

func (*Money) UnmarshalJSON

func (m *Money) UnmarshalJSON(b []byte) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL