units

package
v1.2.0 Latest Latest
Warning

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

Go to latest
Published: May 6, 2025 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const UNITS_PATH = "units_db"

Variables

This section is empty.

Functions

This section is empty.

Types

type Unit

type Unit struct {
	Name       string
	Multiplier float64
}

type UnitAliases

type UnitAliases map[string]*Unit

type UnitGroup

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

func NewUnitGroup

func NewUnitGroup(unitsData io.Reader) (group *UnitGroup, err error)

func (*UnitGroup) Get

func (g *UnitGroup) Get(alias string) (unit *Unit, ok bool)

func (*UnitGroup) IterBackward

func (g *UnitGroup) IterBackward() iter.Seq[*Unit]

func (*UnitGroup) Length

func (g *UnitGroup) Length() int

func (*UnitGroup) Serialize added in v1.1.0

func (g *UnitGroup) Serialize() UnitGroupJSON

type UnitGroupJSON added in v1.1.0

type UnitGroupJSON []UnitJSON

type UnitJSON added in v1.1.0

type UnitJSON struct {
	Name    string   `json:"name"`
	Value   float64  `json:"value"`
	Aliases []string `json:"aliases"`
}

func (*UnitJSON) AddAlias added in v1.1.0

func (u *UnitJSON) AddAlias(alias string)

type UnitRegistry

type UnitRegistry interface {
	Find(alias string) (group *UnitGroup, ok bool)
	Add(key string, group *UnitGroup)
	Serialize() UnitRegistryJSON
	ToJSON() (string, error)
}

type UnitRegistryFiles

type UnitRegistryFiles map[string]*UnitGroup
var EmbeddedUnitRegistry *UnitRegistryFiles = nil

func NewUnitRegistryFiles

func NewUnitRegistryFiles(
	fsys fs.FS,
	dir_path string,
) (registry UnitRegistryFiles, err error)

func NewUnitRegistryFilesDefault

func NewUnitRegistryFilesDefault() UnitRegistryFiles

func (*UnitRegistryFiles) Add

func (r *UnitRegistryFiles) Add(key string, group *UnitGroup)

func (*UnitRegistryFiles) Find

func (r *UnitRegistryFiles) Find(alias string) (group *UnitGroup, ok bool)

func (*UnitRegistryFiles) Length

func (r *UnitRegistryFiles) Length() int

func (*UnitRegistryFiles) Serialize added in v1.1.0

func (r *UnitRegistryFiles) Serialize() UnitRegistryJSON

func (*UnitRegistryFiles) ToJSON added in v1.1.0

func (r *UnitRegistryFiles) ToJSON() (string, error)

type UnitRegistryJSON added in v1.1.0

type UnitRegistryJSON map[string]UnitGroupJSON

type UnitsSlice

type UnitsSlice []*Unit

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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