Skip to main content

Module sui::config

use std::ascii;
use std::bcs;
use std::option;
use std::string;
use std::vector;
use sui::address;
use sui::dynamic_field;
use sui::hex;
use sui::object;
use sui::party;
use sui::transfer;
use sui::tx_context;
use sui::vec_map;

Struct Config

public struct Config<phantom WriteCap> has key
Click to open
Fields

Struct Setting

public struct Setting<Value: copy, drop, store> has drop, store
Click to open
Fields

Struct SettingData

public struct SettingData<Value: copy, drop, store> has drop, store
Click to open
Fields
newer_value_epoch: u64
newer_value: std::option::Option<Value>
older_value_opt: std::option::Option<Value>

Constants

const EAlreadySetForEpoch: u64 = 0;
const ENotSetForEpoch: u64 = 1;
const EBCSSerializationFailure: u64 = 2;

Function new

public(package) fun new<WriteCap>(_cap: &mut WriteCap, ctx: &mut sui::tx_context::TxContext): sui::config::Config<WriteCap>

Function share

public(package) fun share<WriteCap>(config: sui::config::Config<WriteCap>)

Function transfer

public(package) fun transfer<WriteCap>(config: sui::config::Config<WriteCap>, owner: address)

Function add_for_next_epoch

public(package) fun add_for_next_epoch<WriteCap, Name: copy, drop, store, Value: copy, drop, store>(config: &mut sui::config::Config<WriteCap>, _cap: &mut WriteCap, name: Name, value: Value, ctx: &mut sui::tx_context::TxContext): std::option::Option<Value>

Function remove_for_next_epoch

public(package) fun remove_for_next_epoch<WriteCap, Name: copy, drop, store, Value: copy, drop, store>(config: &mut sui::config::Config<WriteCap>, _cap: &mut WriteCap, name: Name, ctx: &mut sui::tx_context::TxContext): std::option::Option<Value>

Function exists_with_type

public(package) fun exists_with_type<WriteCap, Name: copy, drop, store, Value: copy, drop, store>(config: &sui::config::Config<WriteCap>, name: Name): bool

Function exists_with_type_for_next_epoch

public(package) fun exists_with_type_for_next_epoch<WriteCap, Name: copy, drop, store, Value: copy, drop, store>(config: &sui::config::Config<WriteCap>, name: Name, ctx: &sui::tx_context::TxContext): bool

Function borrow_for_next_epoch_mut

public(package) fun borrow_for_next_epoch_mut<WriteCap, Name: copy, drop, store, Value: copy, drop, store>(config: &mut sui::config::Config<WriteCap>, _cap: &mut WriteCap, name: Name, ctx: &mut sui::tx_context::TxContext): &mut Value

Function read_setting_for_next_epoch

public(package) fun read_setting_for_next_epoch<WriteCap, Name: copy, drop, store, Value: copy, drop, store>(config: &sui::config::Config<WriteCap>, name: Name): std::option::Option<Value>

Macro function entry

public(package) macro fun entry<$WriteCap, $Name: copy, drop, store, $Value: copy, drop, store>($config: &mut sui::config::Config<$WriteCap>, $cap: &mut $WriteCap, $name: $Name, $initial_for_next_epoch: |&mut sui::config::Config<$WriteCap>, &mut $WriteCap, &mut sui::tx_context::TxContext| -> $Value, $ctx: &mut sui::tx_context::TxContext): &mut $Value

Macro function update

public(package) macro fun update<$WriteCap, $Name: copy, drop, store, $Value: copy, drop, store>($config: &mut sui::config::Config<$WriteCap>, $cap: &mut $WriteCap, $name: $Name, $initial_for_next_epoch: |&mut sui::config::Config<$WriteCap>, &mut $WriteCap, &mut sui::tx_context::TxContext| -> $Value, $update_for_next_epoch: |std::option::Option<$Value>, &mut $Value| -> (), $ctx: &mut sui::tx_context::TxContext)

Function read_setting

public(package) fun read_setting<Name: copy, drop, store, Value: copy, drop, store>(config: sui::object::ID, name: Name, ctx: &sui::tx_context::TxContext): std::option::Option<Value>

Function read_setting_impl

fun read_setting_impl<FieldSettingValue: key, SettingValue: store, SettingDataValue: store, Value: copy, drop, store>(config: address, name: address, current_epoch: u64): std::option::Option<Value>