Search Apps Documentation Source Content File Folder Download Copy Actions Download

memberstore package

Functions

GetTierPower

func GetTierPower(tierName string, members MembersByTier) float64

GetTierPower calculates the effective voting power for a tier given the current members. This is a safe accessor that uses the internal tiers configuration.

Params

Command

gnokey query vm/qeval -remote "https://rpc.test13.testnets.gno.land" -data "gno.land/r/gov/dao/v3/memberstore.GetTierPower(,)"

Result

IterateTiers

func IterateTiers(fn func(name string, tier Tier) bool)

IterateTiers iterates over all tiers in order. This is a read-only accessor. The callback receives the tier name and tier data. Return true from the callback to stop iteration.

Param

Command

gnokey query vm/qeval -remote "https://rpc.test13.testnets.gno.land" -data "gno.land/r/gov/dao/v3/memberstore.IterateTiers()"

Result

NewChangeTiersRequest

func NewChangeTiersRequest(cur realm, tiers map[string]Tier) dao.ProposalRequest

Param

Command

# WARNING: This command is running in an INSECURE mode.
# It is strongly recommended to use a hardware device for signing
# and avoid trusting any computer connected to the internet,
# as your private keys could be exposed.

gnokey maketx call -pkgpath "gno.land/r/gov/dao/v3/memberstore" -func "NewChangeTiersRequest" -args $'' -gas-fee 1000000ugnot -gas-wanted 1_000_000_000 -send "" -chainid "test-13" -remote "https://rpc.test13.testnets.gno.land" ADDRESSgnokey query -remote "https://rpc.test13.testnets.gno.land" auth/accounts/ADDRESS
gnokey maketx call -pkgpath "gno.land/r/gov/dao/v3/memberstore" -func "NewChangeTiersRequest" -args $'' -gas-fee 1000000ugnot -gas-wanted 1_000_000_000 -send "" -broadcast=false ADDRESS > call.tx
gnokey sign -tx-path call.tx -chainid "test-13" -account-number ACCOUNTNUMBER -account-sequence SEQUENCENUMBER ADDRESS
gnokey broadcast -remote "https://rpc.test13.testnets.gno.land" call.tx
  

Render

func Render(path string) string

Param

Command

gnokey query vm/qeval -remote "https://rpc.test13.testnets.gno.land" -data "gno.land/r/gov/dao/v3/memberstore.Render()"

Result

RenderCharts

func RenderCharts(members MembersByTier) string

RenderCharts generates two pie charts for member tiers: 1) distribution of member counts per tier 2) distribution of power per tier

Param

Command

gnokey query vm/qeval -remote "https://rpc.test13.testnets.gno.land" -data "gno.land/r/gov/dao/v3/memberstore.RenderCharts()"

Result

RenderMembers

func RenderMembers(path string, members MembersByTier) string

RenderMembers returns the members list with tier filters and pagination.

Params

Command

gnokey query vm/qeval -remote "https://rpc.test13.testnets.gno.land" -data "gno.land/r/gov/dao/v3/memberstore.RenderMembers(,)"

Result

NewMember

func NewMember(invitationPoints int) *Member

Param

Command

gnokey query vm/qeval -remote "https://rpc.test13.testnets.gno.land" -data "gno.land/r/gov/dao/v3/memberstore.NewMember()"

Result

Get

func Get(_ int, rlm realm) MembersByTier

Get gets the Members store.

rlm is the cur of an in-scope crossing frame, threaded by the caller. The IsCurrent() check rejects stale or stashed realm values — a malicious realm cannot replay an old cur to claim allowed-DAO identity. After the check, rlm.PkgPath() is the authentic immediate caller's realm.

Params

Command

gnokey query vm/qeval -remote "https://rpc.test13.testnets.gno.land" -data "gno.land/r/gov/dao/v3/memberstore.Get(,)"

Result

NewMembersByTier

func NewMembersByTier() MembersByTier

Command

gnokey query vm/qeval -remote "https://rpc.test13.testnets.gno.land" -data "gno.land/r/gov/dao/v3/memberstore.NewMembersByTier()"

Result

GetTier

func GetTier(name string) (Tier, bool)

GetTier returns a tier by name. This is a read-only accessor.

Param

Command

gnokey query vm/qeval -remote "https://rpc.test13.testnets.gno.land" -data "gno.land/r/gov/dao/v3/memberstore.GetTier()"

Result