pub struct Bs721Contract<'a, T, C, E, Q>{
pub contract_info: Item<'a, ContractInfoResponse>,
pub minter: Item<'a, Addr>,
pub token_count: Item<'a, u64>,
pub operators: Map<'a, (&'a Addr, &'a Addr), Expiration>,
pub tokens: IndexedMap<'a, &'a str, TokenInfo<T>, TokenIndexes<'a, T>>,
/* private fields */
}Fields§
§contract_info: Item<'a, ContractInfoResponse>§minter: Item<'a, Addr>§token_count: Item<'a, u64>§operators: Map<'a, (&'a Addr, &'a Addr), Expiration>Stored as (granter, operator) giving operator full control over granter’s account
tokens: IndexedMap<'a, &'a str, TokenInfo<T>, TokenIndexes<'a, T>>Implementations§
Source§impl<'a, T, C, E, Q> Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> Bs721Contract<'a, T, C, E, Q>
pub fn instantiate( &self, deps: DepsMut<'_>, _env: Env, _info: MessageInfo, msg: InstantiateMsg, ) -> StdResult<Response<C>>
pub fn execute( &self, deps: DepsMut<'_>, env: Env, info: MessageInfo, msg: ExecuteMsg<T, E>, ) -> Result<Response<C>, ContractError>
Source§impl<'a, T, C, E, Q> Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> Bs721Contract<'a, T, C, E, Q>
pub fn mint( &self, deps: DepsMut<'_>, _env: Env, info: MessageInfo, msg: MintMsg<T>, ) -> Result<Response<C>, ContractError>
Source§impl<'a, T, C, E, Q> Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> Bs721Contract<'a, T, C, E, Q>
pub fn _transfer_nft( &self, deps: DepsMut<'_>, env: &Env, info: &MessageInfo, recipient: &str, token_id: &str, ) -> Result<TokenInfo<T>, ContractError>
pub fn _update_approvals( &self, deps: DepsMut<'_>, env: &Env, info: &MessageInfo, spender: &str, token_id: &str, add: bool, expires: Option<Expiration>, ) -> Result<TokenInfo<T>, ContractError>
Sourcepub fn check_can_approve(
&self,
deps: Deps<'_>,
env: &Env,
info: &MessageInfo,
token: &TokenInfo<T>,
) -> Result<(), ContractError>
pub fn check_can_approve( &self, deps: Deps<'_>, env: &Env, info: &MessageInfo, token: &TokenInfo<T>, ) -> Result<(), ContractError>
returns true iff the sender can execute approve or reject on the contract
Sourcepub fn check_can_send(
&self,
deps: Deps<'_>,
env: &Env,
info: &MessageInfo,
token: &TokenInfo<T>,
) -> Result<(), ContractError>
pub fn check_can_send( &self, deps: Deps<'_>, env: &Env, info: &MessageInfo, token: &TokenInfo<T>, ) -> Result<(), ContractError>
returns true iff the sender can transfer ownership of the token
Source§impl<'a, T, C, E, Q> Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> Bs721Contract<'a, T, C, E, Q>
Source§impl<'a, T, C, E, Q> Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> Bs721Contract<'a, T, C, E, Q>
pub fn token_count(&self, storage: &dyn Storage) -> StdResult<u64>
pub fn increment_tokens(&self, storage: &mut dyn Storage) -> StdResult<u64>
pub fn decrement_tokens(&self, storage: &mut dyn Storage) -> StdResult<u64>
Trait Implementations§
Source§impl<'a, T, C, E, Q> Bs721Execute<T, C> for Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> Bs721Execute<T, C> for Bs721Contract<'a, T, C, E, Q>
type Err = ContractError
fn transfer_nft( &self, deps: DepsMut<'_>, env: Env, info: MessageInfo, recipient: String, token_id: String, ) -> Result<Response<C>, ContractError>
fn send_nft( &self, deps: DepsMut<'_>, env: Env, info: MessageInfo, contract: String, token_id: String, msg: Binary, ) -> Result<Response<C>, ContractError>
fn approve( &self, deps: DepsMut<'_>, env: Env, info: MessageInfo, spender: String, token_id: String, expires: Option<Expiration>, ) -> Result<Response<C>, ContractError>
fn revoke( &self, deps: DepsMut<'_>, env: Env, info: MessageInfo, spender: String, token_id: String, ) -> Result<Response<C>, ContractError>
fn approve_all( &self, deps: DepsMut<'_>, env: Env, info: MessageInfo, operator: String, expires: Option<Expiration>, ) -> Result<Response<C>, ContractError>
fn revoke_all( &self, deps: DepsMut<'_>, _env: Env, info: MessageInfo, operator: String, ) -> Result<Response<C>, ContractError>
fn burn( &self, deps: DepsMut<'_>, env: Env, info: MessageInfo, token_id: String, ) -> Result<Response<C>, ContractError>
Source§impl<'a, T, C, E, Q> Bs721Query<T> for Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> Bs721Query<T> for Bs721Contract<'a, T, C, E, Q>
Source§fn operators(
&self,
deps: Deps<'_>,
env: Env,
owner: String,
include_expired: bool,
start_after: Option<String>,
limit: Option<u32>,
) -> StdResult<OperatorsResponse>
fn operators( &self, deps: Deps<'_>, env: Env, owner: String, include_expired: bool, start_after: Option<String>, limit: Option<u32>, ) -> StdResult<OperatorsResponse>
operators returns all operators owner given access to
Source§fn approvals(
&self,
deps: Deps<'_>,
env: Env,
token_id: String,
include_expired: bool,
) -> StdResult<ApprovalsResponse>
fn approvals( &self, deps: Deps<'_>, env: Env, token_id: String, include_expired: bool, ) -> StdResult<ApprovalsResponse>
approvals returns all approvals owner given access to
fn contract_info(&self, deps: Deps<'_>) -> StdResult<ContractInfoResponse>
fn num_tokens(&self, deps: Deps<'_>) -> StdResult<NumTokensResponse>
fn nft_info( &self, deps: Deps<'_>, token_id: String, ) -> StdResult<NftInfoResponse<T>>
fn owner_of( &self, deps: Deps<'_>, env: Env, token_id: String, include_expired: bool, ) -> StdResult<OwnerOfResponse>
fn approval( &self, deps: Deps<'_>, env: Env, token_id: String, spender: String, include_expired: bool, ) -> StdResult<ApprovalResponse>
fn tokens( &self, deps: Deps<'_>, owner: String, start_after: Option<String>, limit: Option<u32>, ) -> StdResult<TokensResponse>
fn all_tokens( &self, deps: Deps<'_>, start_after: Option<String>, limit: Option<u32>, ) -> StdResult<TokensResponse>
fn all_nft_info( &self, deps: Deps<'_>, env: Env, token_id: String, include_expired: bool, ) -> StdResult<AllNftInfoResponse<T>>
Source§impl<T, C, E, Q> Default for Bs721Contract<'static, T, C, E, Q>
impl<T, C, E, Q> Default for Bs721Contract<'static, T, C, E, Q>
impl<'a, T, C, E, Q> Bs721<T, C> for Bs721Contract<'a, T, C, E, Q>
Auto Trait Implementations§
impl<'a, T, C, E, Q> Freeze for Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> RefUnwindSafe for Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> Send for Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> Sync for Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> Unpin for Bs721Contract<'a, T, C, E, Q>
impl<'a, T, C, E, Q> UnwindSafe for Bs721Contract<'a, T, C, E, Q>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more