Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion reference/atomicassets/actions.md
Original file line number Diff line number Diff line change
Expand Up @@ -358,7 +358,7 @@ Source: `include/atomicassets.hpp:202-207`, `src/atomicassets.cpp:1079-1087`

Required authorization: `asset_owner`.

Erases the `assets` row. If the asset is templated, the template's `burnable` flag must be true. Any `backed_tokens` still on the row (only possible on assets that predate the V2 backing deprecation) are credited into `asset_owner`'s `balances` row. Sends `logburnasset` with the full pre-burn state (collection, schema, template id, backed tokens, both data layers, prior ram_payer) before erasing the row.
Erases the `assets` row. If the asset is templated, the template's `burnable` flag must be true. Any `backed_tokens` still on the row (only possible on assets that predate the V2 backing deprecation) are credited into `asset_owner`'s `balances` row. Sends `logburnasset` with the full pre-burn state (collection, schema, template id, backed tokens, both data layers, prior ram_payer) before erasing the row. The parent template's `issued_supply` is unchanged: the action reads the template row only for the `burnable` check, so `issued_supply` counts lifetime mints and a circulating supply must subtract burns.

Source: `include/atomicassets.hpp:209-212`, `src/atomicassets.cpp:1096-1177`

Expand Down
4 changes: 2 additions & 2 deletions reference/atomicassets/tables.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,10 +130,10 @@ Secondary indexes: none.
| `transferable` | `bool` | Inherited by every asset minted from this template; blocks `transfer`, `createoffer`, and `acceptoffer` for the asset when false. |
| `burnable` | `bool` | Inherited by every asset minted from this template. `burnable || transferable` is enforced at creation; both false is rejected. |
| `max_supply` | `uint32_t` | 0 means unlimited. Set at creation, only ever lowered afterward (`locktemplate`, `redtemplmax`). |
| `issued_supply` | `uint32_t` | Incremented by every `mintasset` against this template; must stay `< max_supply` when `max_supply > 0`. Also the value `deltemplate` requires to be exactly 0. |
| `issued_supply` | `uint32_t` | Incremented by every `mintasset` against this template; must stay `< max_supply` when `max_supply > 0`. Also the value `deltemplate` requires to be exactly 0. No action decrements it, `burnasset` included, so it counts lifetime mints rather than circulating supply; a circulating supply must subtract burns. |
| `immutable_serialized_data` | `vector<uint8_t>` | Set once at `createtempl`/`createtempl2`; no action changes it afterward. |

Source: `include/atomicassets.hpp:383-394`, `src/atomicassets.cpp:566-696` (create/lock/reduce/delete actions), `src/atomicassets.cpp:1613-1689` (`internal_create_template`)
Source: `include/atomicassets.hpp:383-394`, `src/atomicassets.cpp:566-696` (create/lock/reduce/delete actions), `src/atomicassets.cpp:1613-1689` (`internal_create_template`), `src/atomicassets.cpp:1096-1177` (`burnasset`, which reads the row for the `burnable` check and never writes it)

Live chain example (`scope=farmersworld`, `table=templates`, `lower_bound=260638`, byte field elided):

Expand Down
Loading