github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/dev/wasm/cw20-base/examples/schema.rs (about)

     1  use std::env::current_dir;
     2  use std::fs::create_dir_all;
     3  
     4  use cosmwasm_schema::{export_schema, remove_schemas, schema_for};
     5  
     6  use cw20::{
     7      AllAccountsResponse, AllAllowancesResponse, AllowanceResponse, BalanceResponse,
     8      TokenInfoResponse,
     9  };
    10  use cw20_base::msg::{ExecuteMsg, InstantiateMsg, QueryMsg};
    11  
    12  fn main() {
    13      let mut out_dir = current_dir().unwrap();
    14      out_dir.push("schema");
    15      create_dir_all(&out_dir).unwrap();
    16      remove_schemas(&out_dir).unwrap();
    17  
    18      export_schema(&schema_for!(InstantiateMsg), &out_dir);
    19      export_schema(&schema_for!(ExecuteMsg), &out_dir);
    20      export_schema(&schema_for!(QueryMsg), &out_dir);
    21      export_schema(&schema_for!(AllowanceResponse), &out_dir);
    22      export_schema(&schema_for!(BalanceResponse), &out_dir);
    23      export_schema(&schema_for!(TokenInfoResponse), &out_dir);
    24      export_schema(&schema_for!(AllAllowancesResponse), &out_dir);
    25      export_schema(&schema_for!(AllAccountsResponse), &out_dir);
    26  }