🌟
[Astar]コントラクト備忘録19(psp34 Mintableについて)
こちらの知見がたまったので、備忘録として残します。
1 概要
- psp34 Mintableについて
2 内容
こちらのコントラクトを作成しました。
OpenBrushのexampleの中身そのままです。
#![cfg_attr(not(feature = "std"), no_std)]
#![feature(min_specialization)]
#[openbrush::contract]
pub mod my_psp34 {
use ink_storage::traits::SpreadAllocate;
use openbrush::{
contracts::psp34::extensions::mintable::*,
traits::Storage,
};
#[derive(Default, SpreadAllocate, Storage)]
#[ink(storage)]
pub struct Contract {
#[storage_field]
psp34: psp34::Data,
}
impl PSP34 for Contract {}
impl PSP34Mintable for Contract {}
impl Contract {
/// The constructor
#[ink(constructor)]
pub fn new() -> Self {
ink_lang::codegen::initialize_contract(|_instance: &mut Self| {})
}
}
}
下のように、PSP34Mintableをそのまま実装していることが確認できます。
では、Githubを見てみましょう。
このように、「mint」が実装されていることがわかります。
https://github.dev/Supercolony-net/openbrush-contracts
では、実際に実行してみましょう。
こちらの「mint」を実行します。
すると、このように、「totalSupply」が増えたことを確認できました。
Shibuya
XCR5PNZbb2b9VGL87ssRSrGrRaqsBdxPiQsAWSX3SjoQNaT
今回は以上です。
Discussion