bubblePath
untyped stringValue
"gno.land/r/g1leu8d2vsplhehcfkjg50mwgdpxdkt8tztu95wr/bubble"
ownPath
untyped stringValue
"gno.land/r/g1leu8d2vsplhehcfkjg50mwgdpxdkt8tztu95wr/bubbletreasury"
KindName
untyped stringValue
"treasury:spend"
subpath
untyped stringValue
"treasury-spend"
one
int64// ugnot in one GNOT
Value
1000000
MaxSpend
int64Value
100000
MaxShare
int64// a proposal, and a window, may move at most balance/MaxShare…
Value
4
SmallTreasury
int64// …or this many whole GNOT, whichever is more (up to the balance)
Value
40
Window
int64// seconds: the pace — one quarter per window
Value
172800
init.9
func()- OID
- 02b1be…e720:3
init.9 details
poolRealms
[]stringpoolRealms are the game's realms: a spend to one of their addresses would strand the coins (a realm's balance is not a bubble's pot), and "seed a bubble" is exactly the spend the holders will think of first.
- OID
- 02b1be…e720:6
poolRealms details
treasury
.uverse.addressValue
<gnolang.StringValue>
offered
boolValue
true
spentAt
int64Value
0
spends
int64// spends executed, ever
Value
0
spent
int64// ugnot moved out, ever
Value
0
windowAt
int64// block time the window opened
Value
0
windowBase
int64// ugnot held when it opened, before its first spend
Value
0
windowSpent
int64// ugnot moved in it
Value
0
WindowLeft
func() int64WindowLeft is what may still move before the window closes, in ugnot — the whole cap for a window not open.
- OID
- 02b1be…e720:15
WindowLeft details
SpentAt
func() int64SpentAt is the height of the last spend; Spends and Spent, the count and the sum — the realm's own log.
- OID
- 02b1be…e720:16
SpentAt details
Spends
func() int64- OID
- 02b1be…e720:17
Spends details
Spent
func() int64- OID
- 02b1be…e720:18
Spent details
noteSpend
func(amt int64)noteSpend is the kind's way to write here: Do runs inside the token realm, which cannot touch this realm's variables, so it crosses back with the sub-realm token it was handed — and only that token is let in (its address is the treasury). Called BEFORE the coins move; a second call in one block panics so the transaction, and with it any batch, unwinds with nothing moved.
- OID
- 02b1be…e720:19
noteSpend details
Address
func() .uverse.address- OID
- 02b1be…e720:20
Address details
Balance
func() int64Balance is what the treasury holds right now, in ugnot.
- OID
- 02b1be…e720:21
Balance details
Offered
func() boolOffered is whether the kind has been published to the token's governor.
- OID
- 02b1be…e720:22
Offered details
Offer
func()Offer is the same publication for a realm loaded without its init having run it (a test harness): it does nothing once the token's governor knows the name. The holders still have to adopt the kind by vote before a spend can be proposed.
- OID
- 02b1be…e720:23
Offer details
MaxNow
func() int64MaxNow is the most one proposal may move right now, in whole GNOT: the cap for a balance.
- OID
- 02b1be…e720:24
MaxNow details
maxFor
func(balance int64) int64- OID
- 02b1be…e720:25
maxFor details
minInt
func(a int64, b int64) int64- OID
- 02b1be…e720:26
minInt details
Preview
func(payload string) stringPreview is what a proposal with this payload would say, and whether it could open now.
- OID
- 02b1be…e720:27
Preview details
spendKind
typeValue
bubbletreasury.spendKind
within
func(n int64) .uverse.errorwithin is the cap for the balance as it stands: the whole of a small treasury, a quarter of a large one.
- OID
- 02b1be…e720:28
within details
parse
func(p string) (.uverse.address, int64, .uverse.error)- OID
- 02b1be…e720:29
parse details
treasuryErr
typeValue
bubbletreasury.treasuryErr
errf
func(s string) .uverse.error- OID
- 02b1be…e720:30
errf details
gnot
func(u int64) stringgnot prints ugnot as GNOT with up to six decimals, trailing zeros dropped.
- OID
- 02b1be…e720:31
gnot details
Render
func(path string) stringRender: the treasury for a reader — where, how much, and how it moves.
- OID
- 02b1be…e720:32