LumiWave.move

init (private func)

์ปจํŠธ๋ž™ํŠธ ๋ฐฐํฌ ์‹œ ์ตœ์ดˆ 1ํšŒ๋งŒ ์‹คํ–‰๋จ

77,007,546๊ฐœ์˜ LWA ํ† ํฐ์„ ๋ฐœํ–‰

ํˆฌํ‘œ dashboard shared object ์ •๋ณด ์ƒ์„ฑ

denyCap object ์ƒ์„ฑ

make_voteboard (private func)

// func parameter
ctx [TxContext]: ํŠธ๋žœ์žญ์…˜ ์ •๋ณด (์ž๋™ ์ž…๋ ฅ)

ํˆฌํ‘œ dashboard object ์ƒ์„ฑ

add_deny (public entry func)

// func parameter
denylist [DenyList]: ์ฐจ๋‹จ ๋ฆฌ์ŠคํŠธ ('0x403' ๊ณ ์ •)
deny_cap[DenyCap<LWA>]: ์ฐจ๋‹จ object ์ •๋ณด
objectrecipient[address]: ์ฐจ๋‹จ ์ถ”๊ฐ€๋ฅผ ์œ„ํ•œ ์ง€๊ฐ‘ ์ฃผ์†Œ ์ •๋ณด
ctx[TxContext]: ํŠธ๋žœ์žญ์…˜ ์ •๋ณด (์ž๋™ ์ž…๋ ฅ)

ํŠน์ • ์ง€๊ฐ‘์„ LWA ์ฐจ๋‹จ ๋ฆฌ์ŠคํŠธ์— ์ถ”๊ฐ€ํ•œ๋‹ค.

remove_deny (public entry func)

// func parameter
denylist [DenyList]: ์ฐจ๋‹จ ๋ฆฌ์ŠคํŠธ ('0x403' ๊ณ ์ •)
deny_cap[DenyCap<LWA>]: ์ฐจ๋‹จ object ์ •๋ณด
recipient [address]: ์ฐจ๋‹จ ์ œ๊ฑฐ๋ฅผ ์œ„ํ•œ ์ง€๊ฐ‘ ์ฃผ์†Œ ์ •๋ณด
ctx[TxContext]: ํŠธ๋žœ์žญ์…˜ ์ •๋ณด (์ž๋™ ์ž…๋ ฅ)

ํŠน์ • ์ง€๊ฐ‘์„ LWA ์ฐจ๋‹จ ๋ฆฌ์ŠคํŠธ์—์„œ ์ œ๊ฑฐํ•œ๋‹ค.

mint (public func)

// func parameter
treasury_cap[TreasuryCap<LWA>]: 'init'์—์„œ ์ƒ์„ฑ๋œ object
amount [u64]: ์ƒ์„ฑํ•  ์ˆ˜๋Ÿ‰
recipient [address]: ์ƒ์„ฑ ํ›„ ์ „์†ก ๋ฐ›์„ ์ง€๊ฐ‘ ์ฃผ์†Œ
ctx[TxContext]: ํŠธ๋žœ์žญ์…˜ ์ •๋ณด (์ž๋™ ์ž…๋ ฅ)

LWA ์ถ”๊ฐ€ minting์„ ์œ„ํ•œ ๊ธฐ๋Šฅ์ด๋ฉฐ ์ตœ๋Œ€ ๊ณต๊ธ‰๋Ÿ‰์„ ์ดˆ๊ณผํ•ด์„œ ์ƒ์„ฑ๋˜์ง€ ์•Š๋„๋ก ์ œํ•œํ•œ๋‹ค.

lock_coin_transfer (public entry func)

// func parameter
treasury_cap[TreasuryCap<LWA>]: 'init'์—์„œ ์ƒ์„ฑ๋œ object
my_coin[Coin<LWA>]: ๋ณด์œ ํ•˜๊ณ  ์žˆ๋Š” LWA object
recipient [address]: ์ˆ˜์‹  ๋ฐ›์„ ์ง€๊ฐ‘ ์ฃผ์†Œ amount
amount [u64]: 'my_coin'์˜ ๋ณด์œ ๋Ÿ‰์—์„œ ์ถ”์ถœ ์ „์†กํ•  ์ˆ˜๋Ÿ‰ ์ •๋ณด
unlock_ts[u64]: lock release timestamp (utc / ms)
ctx[TxContext]: ํŠธ๋žœ์žญ์…˜ ์ •๋ณด (์ž๋™ ์ž…๋ ฅ)

LWA๋ฅผ wrapper๋ฅผ ํ†ตํ•ด lock์„ ๊ฑธ์–ด์„œ ํŠน์ • ์ง€๊ฐ‘์— ์ „์†กํ•œ๋‹ค.

unlock_coin (public entry func)

// func parameter
locked_coin[LockedCoin<LWA>]: lock ๊ฑธ๋ฆฐ wrap object
clock[Clock]: ํ˜„์žฌ ์‹œ๊ฐ„ ์ •๋ณด ('0x6' ๊ณ ์ •)

lock ๊ฑธ๋ฆฐ object๋ฅผ unwrapํ•˜์—ฌ LWA๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค.

burn (public entry func)

// func parameter
treasury_cap[TreasuryCap<LWA>]: 'init'์—์„œ ์ƒ์„ฑ๋œ object
coin [Coin<LWA>]: burnํ•  coin object

์ƒ์„ฑ์ž๊ฐ€ ๋ณด์œ ํ•˜๊ณ  ์žˆ๋Š” coin์„ ์†Œ๊ฐ์‹œํ‚จ๋‹ค.

enable_vote (public entry func)

// func parameter
treasury_cap[TreasuryCap<LWA>]: 'init'์—์„œ ์ƒ์„ฑ๋œ object
vote_board[VoteBoard]: ํˆฌํ‘œ dashboard shared object
is_enable[bool]: ํˆฌํ‘œ ํ™œ์„ฑํ™” ์—ฌ๋ถ€
vote_start_ts[u64]: ํˆฌํ‘œ ์‹œ์ž‘ ์‹œ๊ฐ„ (UTC / ms)
vote_end_ts[u64]: ํˆฌํ‘œ ์ข…๋ฃŒ ์‹œ๊ฐ„ (UTC / ms)
ctx[TxContext]: ํŠธ๋žœ์žญ์…˜ ์ •๋ณด (์ž๋™ ์ž…๋ ฅ)

ํˆฌํ‘œ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”/๋น„ํ™œ์„ฑํ™” ํ•œ๋‹ค.

vote (public entry func)

// func parameter
vote_board[VoteBoard]: ํˆฌํ‘œ dashboard shared object
coin [Coin<LWA>]: ํˆฌํ‘œ์ž๊ฐ€ ๋ณด์œ ํ•˜๊ณ  ์žˆ๋Š” coin object
clock_vote[Clock]: ํ˜„์žฌ ์‹œ๊ฐ„ ์ •๋ณด ('0x6' ๊ณ ์ •)
is_agree[bool]: ํˆฌํ‘œ ์ฐฌ์„ฑ(true) or ๋ฐ˜๋Œ€(false)
ctx[TxContext]: ํŠธ๋žœ์žญ์…˜ ์ •๋ณด (์ž๋™ ์ž…๋ ฅ)

ํˆฌํ‘œ ํ•œ๋‹ค.

vote_counting (public entry func)

// func parameter
treasury_cap[TreasuryCap<LWA>]: 'init'์—์„œ ์ƒ์„ฑ๋œ object
vote_board[VoteBoard]: ํˆฌํ‘œ dashboard shared object
clock_vote[Clock]: ํ˜„์žฌ ์‹œ๊ฐ„ ์ •๋ณด ('0x6' ๊ณ ์ •)
amount [u64]: ๊ฐœํ‘œ ์™„๋ฃŒ ํ›„ ์ฐฌ์„ฑ ๊ฒฐ๊ณผ์ผ ๋•Œ minting ํ•  ์ฝ”์ธ ์ˆ˜๋Ÿ‰
ctx[TxContext]: ํŠธ๋žœ์žญ์…˜ ์ •๋ณด (์ž๋™ ์ž…๋ ฅ)

์™„๋ฃŒ๋œ ํˆฌํ‘œ๋ฅผ ๊ฐœํ‘œํ•˜๊ณ  ์ฐฌ์„ฑ ๊ฒฐ๊ณผ์ผ ๋•Œ ์ฝ”์ธ ์ถ”๊ฐ€ minting์„ ํ•œ๋‹ค.

vote_reset (public entry func)

// func parameter
treasury_cap[TreasuryCap<LWA>]: 'init'์—์„œ ์ƒ์„ฑ๋œ object
vote_board[VoteBoard]: ํˆฌํ‘œ dashboard shared object
ctx[TxContext]: ํŠธ๋žœ์žญ์…˜ ์ •๋ณด (์ž๋™ ์ž…๋ ฅ)

์™„๋ฃŒ๋œ ๊ฐœํ‘œ๋ฅผ ๋‹ค์Œ ํˆฌํ‘œ๋ฅผ ์œ„ํ•˜์—ฌ ์ดˆ๊ธฐํ™”ํ•œ๋‹ค.

Last updated