GetDomainPath
func() stringGetDomainPath returns the domain path of the protocol fee contract.
- OID
- 0c1c0f…3a8d:3
GetDomainPath details
GetVersionPackagePath
func() stringGetVersionPackagePath returns the current implementation package path.
- OID
- 0c1c0f…3a8d:5
GetVersionPackagePath details
cloneStringInt64Map
func(src map[string]int64) map[string]int64- OID
- 0c1c0f…3a8d:6
cloneStringInt64Map details
cloneStringSlice
func(src []string) []string- OID
- 0c1c0f…3a8d:8
cloneStringSlice details
DistributeProtocolFee
func()DistributeProtocolFee distributes accumulated protocol fees to DevOps and GovStaker.
- OID
- 0c1c0f…3a8d:9
DistributeProtocolFee details
DistributeProtocolFeeByTokenPath
func(tokenPath string)DistributeProtocolFeeByTokenPath distributes accumulated protocol fees for a single token path.
- OID
- 0c1c0f…3a8d:11
DistributeProtocolFeeByTokenPath details
SetDevOpsPct
func(pct int64)SetDevOpsPct sets the percentage of protocol fees allocated to DevOps. Parameters: - pct: percentage (0-100)
- OID
- 0c1c0f…3a8d:12
SetDevOpsPct details
SetGovStakerPct
func(pct int64)SetGovStakerPct sets the percentage of protocol fees allocated to GovStaker. Parameters: - pct: percentage (0-100)
- OID
- 0c1c0f…3a8d:13
SetGovStakerPct details
AddToProtocolFee
func(tokenPath string, amount int64) .uverse.errorAddToProtocolFee adds tokens to the protocol fee pool. Parameters: - tokenPath: path of the token - amount: amount to add
- OID
- 0c1c0f…3a8d:14
AddToProtocolFee details
GetDevOpsPct
func() int64GetDevOpsPct returns the DevOps fee percentage.
- OID
- 0c1c0f…3a8d:15
GetDevOpsPct details
GetGovStakerPct
func() int64GetGovStakerPct returns the GovStaker fee percentage.
- OID
- 0c1c0f…3a8d:16
GetGovStakerPct details
GetReservedTokens
func() []stringGetReservedTokens returns token paths reserved for distribution.
- OID
- 0c1c0f…3a8d:17
GetReservedTokens details
GetAccuTransfersToGovStaker
func() map[string]int64GetAccuTransfersToGovStaker returns accumulated transfers to GovStaker.
- OID
- 0c1c0f…3a8d:18
GetAccuTransfersToGovStaker details
GetAccuTransfersToDevOps
func() map[string]int64GetAccuTransfersToDevOps returns accumulated transfers to DevOps.
- OID
- 0c1c0f…3a8d:19
GetAccuTransfersToDevOps details
GetAccuTransferToGovStakerByTokenPath
func(tokenPath string) int64GetAccuTransferToGovStakerByTokenPath returns accumulated GovStaker transfer for a token.
- OID
- 0c1c0f…3a8d:20
GetAccuTransferToGovStakerByTokenPath details
GetAccuTransferToDevOpsByTokenPath
func(tokenPath string) int64GetAccuTransferToDevOpsByTokenPath returns accumulated DevOps transfer for a token.
- OID
- 0c1c0f…3a8d:21
GetAccuTransferToDevOpsByTokenPath details
GetActualDistributedToGovStaker
func() map[string]int64GetActualDistributedToGovStaker returns actual transfers completed to GovStaker.
- OID
- 0c1c0f…3a8d:22
GetActualDistributedToGovStaker details
GetActualDistributedToDevOps
func() map[string]int64GetActualDistributedToDevOps returns actual transfers completed to DevOps.
- OID
- 0c1c0f…3a8d:23
GetActualDistributedToDevOps details
GetActualDistributedToGovStakerByTokenPath
func(tokenPath string) int64GetActualDistributedToGovStakerByTokenPath returns actual GovStaker transfer for a token.
- OID
- 0c1c0f…3a8d:24
GetActualDistributedToGovStakerByTokenPath details
GetActualDistributedToDevOpsByTokenPath
func(tokenPath string) int64GetActualDistributedToDevOpsByTokenPath returns actual DevOps transfer for a token.
- OID
- 0c1c0f…3a8d:25
GetActualDistributedToDevOpsByTokenPath details
currentAddress
.uverse.addressValue
<gnolang.StringValue>
domainPath
stringValue
"gno.land/r/gnoswap/protocol_fee"
kvStore
*store.kvStore- OID
- 0c1c0f…3a8d:45
kvStore details
versionManager
*version_manager.versionManager- OID
- 0c1c0f…3a8d:49
versionManager details
implementation
*v1.protocolFeeV1- OID
- 02af6e…7b3b:24
implementation details
init.25
func()- OID
- 0c1c0f…3a8d:31
init.25 details
initializeDomainStore
func(int, rlm .uverse.realm, kvStore store.KVStore) interface{...}- OID
- 0c1c0f…3a8d:33
initializeDomainStore details
getImplementation
func() protocol_fee.IProtocolFee- OID
- 0c1c0f…3a8d:34
getImplementation details
updateImplementation
func() .uverse.error- OID
- 0c1c0f…3a8d:35
updateImplementation details
StoreKey
typeValue
protocol_fee.StoreKey
StoreKeyDevOpsPct
protocol_fee.StoreKeyValue
<gnolang.StringValue>
StoreKeyAccuToGovStaker
protocol_fee.StoreKey// tokenPath -> amount
Value
<gnolang.StringValue>
StoreKeyAccuToDevOps
protocol_fee.StoreKey// tokenPath -> amount
Value
<gnolang.StringValue>
StoreKeyDistributedToGovStakerHistory
protocol_fee.StoreKey// tokenPath -> amount
Value
<gnolang.StringValue>
StoreKeyDistributedToDevOpsHistory
protocol_fee.StoreKey// tokenPath -> amount
Value
<gnolang.StringValue>
StoreKeyReservedTokens
protocol_fee.StoreKeyValue
<gnolang.StringValue>
defaultDevOpsPct
int64Value
0
errSpoofedRealm
untyped stringValue
"rlm does not match the current crossing frame"
NewBPTreeN
func(fanout int) *v0.BPTreeNewBPTreeN allocates a BP-tree under /r/gnoswap/protocol\_fee's realm context so tree.Set leaf-slot writes clear the readonly-taint gate regardless of which realm (protocol\_fee/v1, mock, tests) calls Set. Callers must allocate protocol\_fee trees through here rather than bptree.NewBPTreeN directly.
- OID
- 0c1c0f…3a8d:36
NewBPTreeN details
protocolFeeStore
typeValue
protocol_fee.protocolFeeStore
NewProtocolFeeStore
func(kvStore store.KVStore) protocol_fee.IProtocolFeeStoreNewprotocolFeeStore creates a new protocol fee store instance with the provided KV store. This function is used by the upgrade system to create storage instances for each implementation.
- OID
- 0c1c0f…3a8d:38
NewProtocolFeeStore details
IProtocolFee
typeValue
protocol_fee.IProtocolFee
IProtocolFeeManager
typeValue
protocol_fee.IProtocolFeeManager
IProtocolFeeGetter
typeValue
protocol_fee.IProtocolFeeGetter
IProtocolFeeStore
typeValue
protocol_fee.IProtocolFeeStore
RegisterInitializer
func(initializer func(...))RegisterInitializer registers a new pool implementation version. This function is called by each version (v1, v2, etc.) during initialization to register their implementation with the proxy system. The initializer function creates a new instance of the implementation using the provided protocolFeeStore interface. It receives a realm value that resolves to the protocol\_fee proxy realm — the only address with write permission on the shared KV store — so any per-version store bootstrapping performed inside the initializer passes the proxy's authorization check. Security: Only contracts within the domain path can register initializers. Each package path can only register once to prevent duplicate registrations.
- OID
- 0c1c0f…3a8d:39
RegisterInitializer details
UpgradeImpl
func(packagePath string)UpgradeImpl switches the active protocol fee implementation to a different version. This function allows seamless upgrades from one version to another without data migration or downtime. Security: Only admin or governance can perform upgrades. The new implementation must have been previously registered via RegisterInitializer.
- OID
- 0c1c0f…3a8d:41
UpgradeImpl details
GetImplementationPackagePath
func() stringGetImplementationPackagePath returns the package path of the currently active implementation.
- OID
- 0c1c0f…3a8d:42