Skip to content

Commit

Permalink
Revert "remove zero Balance or empty NFTGallery (#28)"
Browse files Browse the repository at this point in the history
This reverts commit 0303214.
  • Loading branch information
nkysg committed Mar 2, 2023
1 parent 1f6d4d1 commit d32bad2
Show file tree
Hide file tree
Showing 24 changed files with 15 additions and 235 deletions.
2 changes: 1 addition & 1 deletion build/StarcoinFramework/BuildInfo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,7 @@ compiled_package_info:
? address: "0x00000000000000000000000000000001"
name: YieldFarmingV2
: StarcoinFramework
source_digest: BC0B86D823E4E24673E4F21BDAA7F7A974D00890881DEB43A67C5F3773263496
source_digest: 54034AEB5CDBFFF340E2E96579A13CF5046A4E3EDF6512B45ADD5B82AC29F11B
build_flags:
dev_mode: false
test_mode: false
Expand Down
Binary file not shown.
Binary file not shown.
Binary file modified build/StarcoinFramework/bytecode_modules/Account.mv
Binary file not shown.
Binary file modified build/StarcoinFramework/bytecode_modules/AccountScripts.mv
Binary file not shown.
Binary file modified build/StarcoinFramework/bytecode_modules/NFTGallery.mv
Binary file not shown.
Binary file modified build/StarcoinFramework/bytecode_modules/NFTGalleryScripts.mv
Binary file not shown.
42 changes: 0 additions & 42 deletions build/StarcoinFramework/docs/Account.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,6 @@ The module for the account resource that governs every account
- [Function `txn_prologue`](#0x1_Account_txn_prologue)
- [Function `txn_epilogue`](#0x1_Account_txn_epilogue)
- [Function `txn_epilogue_v2`](#0x1_Account_txn_epilogue_v2)
- [Function `remove_zero_balance`](#0x1_Account_remove_zero_balance)
- [Module Specification](#@Module_Specification_1)


Expand Down Expand Up @@ -2966,47 +2965,6 @@ It collects gas and bumps the sequence number



</details>

<a name="0x1_Account_remove_zero_balance"></a>

## Function `remove_zero_balance`

Remove zero Balance


<pre><code><b>public</b> <b>fun</b> <a href="Account.md#0x1_Account_remove_zero_balance">remove_zero_balance</a>&lt;TokenType: store&gt;(account: &signer)
</code></pre>



<details>
<summary>Implementation</summary>


<pre><code><b>public</b> <b>fun</b> <a href="Account.md#0x1_Account_remove_zero_balance">remove_zero_balance</a>&lt;TokenType: store&gt;(account: &signer) <b>acquires</b> <a href="Account.md#0x1_Account_Balance">Balance</a> {
<b>let</b> addr: <b>address</b> = <a href="Signer.md#0x1_Signer_address_of">Signer::address_of</a>(account);
<b>let</b> <a href="Account.md#0x1_Account_Balance">Balance</a>&lt;TokenType&gt; { token } = <b>move_from</b>&lt;<a href="Account.md#0x1_Account_Balance">Balance</a>&lt;TokenType&gt;&gt;(addr);
<a href="Token.md#0x1_Token_destroy_zero">Token::destroy_zero</a>&lt;TokenType&gt;(token);
}
</code></pre>



</details>

<details>
<summary>Specification</summary>



<pre><code><b>let</b> addr = <a href="Signer.md#0x1_Signer_address_of">Signer::address_of</a>(account);
<b>aborts_if</b> !<b>exists</b>&lt;<a href="Account.md#0x1_Account_Balance">Balance</a>&lt;TokenType&gt;&gt;(addr);
<b>ensures</b> !<b>exists</b>&lt;<a href="Account.md#0x1_Account_Balance">Balance</a>&lt;TokenType&gt;&gt;(addr);
</code></pre>



</details>

<a name="@Module_Specification_1"></a>
Expand Down
26 changes: 0 additions & 26 deletions build/StarcoinFramework/docs/AccountScripts.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@

- [Function `enable_auto_accept_token`](#0x1_AccountScripts_enable_auto_accept_token)
- [Function `disable_auto_accept_token`](#0x1_AccountScripts_disable_auto_accept_token)
- [Function `remove_zero_balance`](#0x1_AccountScripts_remove_zero_balance)


<pre><code><b>use</b> <a href="Account.md#0x1_Account">0x1::Account</a>;
Expand Down Expand Up @@ -65,29 +64,4 @@ The script function is reenterable.



</details>

<a name="0x1_AccountScripts_remove_zero_balance"></a>

## Function `remove_zero_balance`

Remove zero Balance


<pre><code><b>public</b>(<b>script</b>) <b>fun</b> <a href="AccountScripts.md#0x1_AccountScripts_remove_zero_balance">remove_zero_balance</a>&lt;TokenType: store&gt;(account: signer)
</code></pre>



<details>
<summary>Implementation</summary>


<pre><code><b>public</b>(<b>script</b>) <b>fun</b> <a href="AccountScripts.md#0x1_AccountScripts_remove_zero_balance">remove_zero_balance</a>&lt;TokenType: store&gt;(account: signer) {
<a href="Account.md#0x1_Account_remove_zero_balance">Account::remove_zero_balance</a>&lt;TokenType&gt;(&account);
}
</code></pre>



</details>
26 changes: 0 additions & 26 deletions build/StarcoinFramework/docs/NFT.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@

- [Function `accept`](#0x1_NFTGalleryScripts_accept)
- [Function `transfer`](#0x1_NFTGalleryScripts_transfer)
- [Function `remove_empty_gallery`](#0x1_NFTGalleryScripts_remove_empty_gallery)
- [Module Specification](#@Module_Specification_0)


Expand Down Expand Up @@ -67,31 +66,6 @@ Transfer NFT<NFTMeta, NFTBody> with <code>id</code> from <code>sender</code> to



</details>

<a name="0x1_NFTGalleryScripts_remove_empty_gallery"></a>

## Function `remove_empty_gallery`

Remove empty NFTGallery<Meta,Body>.


<pre><code><b>public</b>(<b>script</b>) <b>fun</b> <a href="NFT.md#0x1_NFTGalleryScripts_remove_empty_gallery">remove_empty_gallery</a>&lt;NFTMeta: <b>copy</b>, drop, store, NFTBody: store&gt;(sender: signer)
</code></pre>



<details>
<summary>Implementation</summary>


<pre><code><b>public</b>(<b>script</b>) <b>fun</b> <a href="NFT.md#0x1_NFTGalleryScripts_remove_empty_gallery">remove_empty_gallery</a>&lt;NFTMeta: <b>copy</b> + store + drop, NFTBody: store&gt;(sender: signer) {
<a href="NFT.md#0x1_NFTGallery_remove_empty_gallery">NFTGallery::remove_empty_gallery</a>&lt;NFTMeta, NFTBody&gt;(&sender);
}
</code></pre>



</details>

<a name="@Module_Specification_0"></a>
Expand Down
Binary file modified build/StarcoinFramework/source_maps/Account.mvsm
Binary file not shown.
Binary file modified build/StarcoinFramework/source_maps/AccountScripts.mvsm
Binary file not shown.
Binary file modified build/StarcoinFramework/source_maps/IdentifierNFT.mvsm
Binary file not shown.
Binary file modified build/StarcoinFramework/source_maps/IdentifierNFTScripts.mvsm
Binary file not shown.
Binary file modified build/StarcoinFramework/source_maps/NFT.mvsm
Binary file not shown.
Binary file modified build/StarcoinFramework/source_maps/NFTGallery.mvsm
Binary file not shown.
Binary file modified build/StarcoinFramework/source_maps/NFTGalleryScripts.mvsm
Binary file not shown.
27 changes: 0 additions & 27 deletions integration-tests/account/remove_zero_balance.exp

This file was deleted.

30 changes: 0 additions & 30 deletions integration-tests/account/remove_zero_balance.move

This file was deleted.

34 changes: 13 additions & 21 deletions integration-tests/nft/test_gallery.exp
Original file line number Diff line number Diff line change
@@ -1,105 +1,97 @@
processed 18 tasks
processed 16 tasks

task 5 'run'. lines 71-79:
task 4 'run'. lines 70-78:
{
"gas_used": 210684,
"status": {
"Keep": "Executed"
}
}

task 6 'run'. lines 81-89:
task 5 'run'. lines 80-88:
{
"gas_used": 85929,
"status": {
"Keep": "Executed"
}
}

task 7 'run'. lines 92-106:
task 6 'run'. lines 91-105:
{
"gas_used": 56773,
"status": {
"Keep": "Executed"
}
}

task 8 'run'. lines 108-116:
task 7 'run'. lines 107-115:
{
"gas_used": 108590,
"status": {
"Keep": "Executed"
}
}

task 9 'run'. lines 118-134:
task 8 'run'. lines 117-133:
{
"gas_used": 112663,
"status": {
"Keep": "Executed"
}
}

task 10 'run'. lines 136-144:
task 9 'run'. lines 135-143:
{
"gas_used": 18640403,
"status": {
"Keep": "Executed"
}
}

task 11 'run'. lines 148-161:
task 10 'run'. lines 147-160:
{
"gas_used": 3113987,
"status": {
"Keep": "Executed"
}
}

task 12 'run'. lines 164-185:
task 11 'run'. lines 163-184:
{
"gas_used": 28324758,
"status": {
"Keep": "Executed"
}
}

task 13 'run'. lines 187-206:
task 12 'run'. lines 186-205:
{
"gas_used": 2262261,
"status": {
"Keep": "Executed"
}
}

task 14 'run'. lines 208-220:
task 13 'run'. lines 207-219:
{
"gas_used": 19223,
"status": {
"Keep": "Executed"
}
}

task 15 'run'. lines 224-234:
task 14 'run'. lines 223-233:
{
"gas_used": 145028,
"status": {
"Keep": "Executed"
}
}

task 16 'run'. lines 237-251:
task 15 'run'. lines 236-250:
{
"gas_used": 2060975,
"status": {
"Keep": "Executed"
}
}

task 17 'run'. lines 253-267:
{
"gas_used": 328171,
"status": {
"Keep": "Executed"
}
}
19 changes: 1 addition & 18 deletions integration-tests/nft/test_gallery.move
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@

//# faucet --addr bob

//# faucet --addr alice

//# publish
module creator::AnyNFT {
Expand Down Expand Up @@ -248,20 +247,4 @@ fun main(sender: signer) {
}
}

// check: EXECUTED

//# run --signers alice
script {
use creator::AnyNFT::{Self, AnyNFT, AnyNFTBody};
use StarcoinFramework::NFTGallery;

fun main(sender: signer) {
AnyNFT::do_accept(&sender);
AnyNFT::mint(&sender);
let nft = NFTGallery::withdraw_one<AnyNFT, AnyNFTBody>(&sender);
AnyNFT::burn(nft);
NFTGallery::remove_empty_gallery<AnyNFT, AnyNFTBody>(&sender);
}
}

// check: EXECUTED
// check: EXECUTED
13 changes: 0 additions & 13 deletions sources/Account.move
Original file line number Diff line number Diff line change
Expand Up @@ -993,19 +993,6 @@ module Account {
aborts_if txn_gas_price * (txn_max_gas_units - gas_units_remaining) > 0 &&
global<TransactionFee::TransactionFee<TokenType>>(CoreAddresses::GENESIS_ADDRESS()).fee.value + txn_gas_price * (txn_max_gas_units - gas_units_remaining) > max_u128();
}

/// Remove zero Balance
public fun remove_zero_balance<TokenType: store>(account: &signer) acquires Balance {
let addr: address = Signer::address_of(account);
let Balance<TokenType> { token } = move_from<Balance<TokenType>>(addr);
Token::destroy_zero<TokenType>(token);
}

spec remove_zero_balance {
let addr = Signer::address_of(account);
aborts_if !exists<Balance<TokenType>>(addr);
ensures !exists<Balance<TokenType>>(addr);
}
}

}
5 changes: 0 additions & 5 deletions sources/AccountScripts.move
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,5 @@ module AccountScripts {
public(script) fun disable_auto_accept_token(account: signer) {
Account::set_auto_accept_token(&account, false);
}

/// Remove zero Balance
public(script) fun remove_zero_balance<TokenType: store>(account: signer) {
Account::remove_zero_balance<TokenType>(&account);
}
}
}
Loading

0 comments on commit d32bad2

Please sign in to comment.