mirror of
https://github.com/luxfi/util.git
synced 2026-10-30 15:13:56 +00:00
These three sit in luxfi/node under utils/, and P-Chain and X-Chain reach for them. Both chains have to leave that repository before it can be archived, and a chain should not have to depend on a node to measure a quantity in nLUX, keep a heap, or walk a sequence. units imports nothing at all; heap wanted only Zero, which is already here; iterator wanted heap and Zero. Three of iterator's tests exercise it against platformvm's state iterators. They stay with the node, and travel with platformvm, because a generic sequence should not be tested through one virtual machine's idea of state. What remains here covers the package on its own terms. Co-authored-by: Hanzo Dev <[email protected]>
20 lines
770 B
Go
20 lines
770 B
Go
// Copyright (C) 2019-2025, Lux Industries Inc. All rights reserved.
|
|
// See the file LICENSE for licensing terms.
|
|
|
|
|
|
package units
|
|
|
|
// Denominations of value
|
|
// LUX uses 6 decimals (like USDC), allowing max supply of ~18.4 trillion LUX in uint64
|
|
const (
|
|
MicroLux uint64 = 1 // Base unit (6 decimals) - 0.000001 LUX
|
|
MilliLux uint64 = 1000 * MicroLux // 0.001 LUX
|
|
Lux uint64 = 1000 * MilliLux // 1 LUX = 10^6 microLUX
|
|
KiloLux uint64 = 1000 * Lux // 1,000 LUX
|
|
MegaLux uint64 = 1000 * KiloLux // 1,000,000 LUX
|
|
GigaLux uint64 = 1000 * MegaLux // 1,000,000,000 LUX (1 billion)
|
|
TeraLux uint64 = 1000 * GigaLux // 1,000,000,000,000 LUX (1 trillion)
|
|
|
|
Schmeckle uint64 = 49*MilliLux + 463*MicroLux
|
|
)
|