# README
go-units
Go library for manipulating and converting between various units of measurement
Usage
In the most basic usage, go-units
may be used to convert a value from one unit to another:
package main
import (
"fmt"
u "github.com/bcicen/go-units"
)
func main() {
// convert a simple float from celsius to fahrenheit
fmt.Println(u.MustConvertFloat(25.5, u.Celsius, u.Fahrenheit)) // outputs "77.9 fahrenheit"
// convert a units.Value instance
val := u.NewValue(25.5, u.Celsius)
fmt.Println(val) // "25.5 celsius"
fmt.Println(val.MustConvert(u.Fahrenheit)) // "77.9 fahrenheit"
fmt.Println(val.MustConvert(u.Kelvin)) // "298.65 kelvin"
}
Formatting
Aside from unit conversions, go-units
may also be used for generating human-readable unit labels, plural names, and symbols:
val := u.NewValue(2.0, u.Nibble)
fmt.Println(val) // "2 nibbles"
fmt.Println(val.MustConvert(u.Byte)) // "1 byte"
// value formatting options may also be specified:
opts := u.FmtOptions{
Label: true, // append unit name/symbol
Short: true, // use unit symbol
Precision: 3,
}
val = u.NewValue(15.456932, u.KiloMeter)
fmt.Println(val) // "15.456932 kilometers"
fmt.Println(val.Fmt(opts)) // "15.457 km"
fmt.Println(val.Float()) // "15.456932"
Lookup
The package-level Find()
method may be used to search for a unit by name, symbol, or alternate spelling:
// symbol
unit, err := u.Find("m")
// name
unit, err := u.Find("meter")
// alternate spelling
unit, err := u.Find("metre")
Custom Units
go-units
comes with 260 unit names and symbols builtin; however, new units and conversions can be easily added:
// register custom unit names
Ding := u.NewUnit("ding", "di")
Dong := u.NewUnit("dong", "do")
// there are 100 dongs in a ding
u.NewRatioConversion(Ding, Dong, 100.0)
val := u.NewValue(25.0, Ding)
fmt.Printf("%s = %s\n", val, val.MustConvert(Dong)) // "25 dings = 2500 dongs"
// conversions are automatically registered when using magnitude prefix helper methods
KiloDong := u.Kilo(Dong)
fmt.Println(u.MustConvertFloat(1000.0, Dong, KiloDong)) // "1 kilodong"
# Functions
Return all registered Units, sorted by name and quantity.
No description provided by the author
No description provided by the author
ConvertFloat converts a provided float from one Unit to another.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Find Unit matching name or symbol provided.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
MustConvertFloat converts a provided float from one Unit to another, panicking on error.
No description provided by the author
NewConversion registers a new conversion formula from one Unit to another.
NewConversion registers a new conversion formula from one Unit to another.
Register a conversion formula and the inverse, given a ratio of from Unit in to Unit.
NewUnit registers a new Unit within the package, returning the newly created Unit.
NewValue creates a new Value instance.
No description provided by the author
No description provided by the author
No description provided by the author
Magnitude prefix methods create and return a new Unit, while automatically registering conversions to and from the provided base Unit.
ResolveConversion resolves a path of one or more Conversions between two units.
No description provided by the author
No description provided by the author
No description provided by the author
Additional names, spellings, or symbols that this unit may be referred to as.
Either "none", "auto", or a custom plural unit name "none" - labels will use the unmodified unit name in a plural context "auto" - labels for this unit will be created with a plural suffix when appropriate (default).
Set a quantity label for which this Unit belongs.
Set a system of units for which this Unit belongs.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Variables
No description provided by the author
Other.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Shorthand for pre-defined unit systems.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
other.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
US.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
imperial.
metric.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
metric.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
metric.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
metric.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
SI unit metric.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
more esoteric time units.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
imperial.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
metric.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Structs
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Type aliases
No description provided by the author
No description provided by the author
Option that may be passed to NewUnit.