wasm

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 2, 2020 License: Apache-2.0 Imports: 14 Imported by: 0

README

Start wasm on irita

Compile smart contract
# install wasm-pack
curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh 

# clone example
git clone https://github.com/confio/cosmwasm-examples
cd cosmwasm-examples/escrow
git checkout escrow-0.2.1

# complie
wasm-pack build
du -h ./pkg/cw_escrow_bg.wasm

# cp wasm to work dir
mkdir ~/wasm-test
cp ./pkg/cw_escrow_bg.wasm ~/wasm-test/contract.wasm
Init testnet
cd ~/wasm-test
irita testnet --v 1 --chain-id test
irita start --home mytestnet/node0/irita

deploy the contract

# add key node1
iritacli keys add node1

# both should be empty
iritacli query wasm list-code
iritacli query wasm list-contracts

# upload and see we create code 1
# gas is huge due to wasm size... but auto-zipping reduced this from 800k to around 260k
iritacli tx wasm store contract.wasm --gas 3000000 --from node0  -y -b block --chain-id test
iritacli query wasm list-code
Instantiating the contract
# instantiate contract and verify
INIT="{\"arbiter\":\"$(iritacli keys show node0 -a)\", \"recipient\":\"$(iritacli keys show node1 -a)\", \"end_time\":0, \"end_height\":0}"

iritacli tx wasm instantiate 1 "$INIT" --from node0 --amount=50000stake  -y --from node0 -b block --chain-id test

# check the contract state (and account balance)
iritacli query wasm list-contracts
iritacli query wasm contract <contract-id>
iritacli query account <contract-id>

Documentation

Overview

nolint autogenerated code using github.com/rigelrozanski/multitool aliases generated for the following subdirectories: ALIASGEN: github.com/bianjieai/irita/modules/wasm/internal/types ALIASGEN: github.com/bianjieai/irita/modules/wasm/internal/keeper

Index

Constants

View Source
const (
	ModuleName                    = types.ModuleName
	StoreKey                      = types.StoreKey
	TStoreKey                     = types.TStoreKey
	QuerierRoute                  = types.QuerierRoute
	RouterKey                     = types.RouterKey
	MaxWasmSize                   = types.MaxWasmSize
	GasMultiplier                 = keeper.GasMultiplier
	MaxGas                        = keeper.MaxGas
	QueryListContracts            = keeper.QueryListContracts
	QueryGetContract              = keeper.QueryGetContract
	QueryGetContractState         = keeper.QueryGetContractState
	QueryGetCode                  = keeper.QueryGetCode
	QueryListCode                 = keeper.QueryListCode
	QueryMethodContractStateSmart = keeper.QueryMethodContractStateSmart
	QueryMethodContractStateAll   = keeper.QueryMethodContractStateAll
	QueryMethodContractStateRaw   = keeper.QueryMethodContractStateRaw
)
View Source
const (
	AttributeKeyContract = "contract_address"
	AttributeKeyCodeID   = "code_id"
	AttributeSigner      = "signer"
)

Variables

View Source
var (
	// functions aliases
	RegisterCodec             = types.RegisterCodec
	ValidateGenesis           = types.ValidateGenesis
	GetCodeKey                = types.GetCodeKey
	GetContractAddressKey     = types.GetContractAddressKey
	GetContractStorePrefixKey = types.GetContractStorePrefixKey
	NewCodeInfo               = types.NewCodeInfo
	NewParams                 = types.NewParams
	NewWasmCoins              = types.NewWasmCoins
	NewContractInfo           = types.NewContractInfo
	CosmosResult              = types.CosmosResult
	DefaultWasmConfig         = types.DefaultWasmConfig
	InitGenesis               = keeper.InitGenesis
	ExportGenesis             = keeper.ExportGenesis
	NewKeeper                 = keeper.NewKeeper
	NewQuerier                = keeper.NewQuerier
	MakeTestCodec             = keeper.MakeTestCodec
	CreateTestInput           = keeper.CreateTestInput

	// variable aliases
	ModuleCdc            = types.ModuleCdc
	DefaultCodespace     = types.DefaultCodespace
	ErrCreateFailed      = types.ErrCreateFailed
	ErrAccountExists     = types.ErrAccountExists
	ErrInstantiateFailed = types.ErrInstantiateFailed
	ErrExecuteFailed     = types.ErrExecuteFailed
	ErrGasLimit          = types.ErrGasLimit
	ErrInvalidGenesis    = types.ErrInvalidGenesis
	ErrNotFound          = types.ErrNotFound
	ErrQueryFailed       = types.ErrQueryFailed
	KeyLastCodeID        = types.KeyLastCodeID
	KeyLastInstanceID    = types.KeyLastInstanceID
	CodeKeyPrefix        = types.CodeKeyPrefix
	ContractKeyPrefix    = types.ContractKeyPrefix
	ContractStorePrefix  = types.ContractStorePrefix
)

Functions

func NewHandler

func NewHandler(k Keeper) sdk.Handler

NewHandler returns a handler for "bank" type messages.

Types

type AppModule

type AppModule struct {
	AppModuleBasic
	// contains filtered or unexported fields
}

AppModule implements an application module for the wasm module.

func NewAppModule

func NewAppModule(keeper Keeper) AppModule

NewAppModule creates a new AppModule object

func (AppModule) BeginBlock

func (am AppModule) BeginBlock(_ sdk.Context, _ abci.RequestBeginBlock)

BeginBlock returns the begin blocker for the wasm module.

func (AppModule) EndBlock

EndBlock returns the end blocker for the wasm module. It returns no validator updates.

func (AppModule) ExportGenesis

func (am AppModule) ExportGenesis(ctx sdk.Context) json.RawMessage

ExportGenesis returns the exported genesis state as raw bytes for the wasm module.

func (AppModule) InitGenesis

func (am AppModule) InitGenesis(ctx sdk.Context, data json.RawMessage) []abci.ValidatorUpdate

InitGenesis performs genesis initialization for the wasm module. It returns no validator updates.

func (AppModule) Name

func (AppModule) Name() string

Name returns the wasm module's name.

func (AppModule) NewHandler

func (am AppModule) NewHandler() sdk.Handler

NewHandler returns an sdk.Handler for the wasm module.

func (AppModule) NewQuerierHandler

func (am AppModule) NewQuerierHandler() sdk.Querier

NewQuerierHandler returns the wasm module sdk.Querier.

func (AppModule) QuerierRoute

func (AppModule) QuerierRoute() string

QuerierRoute returns the wasm module's querier route name.

func (AppModule) RegisterInvariants

func (am AppModule) RegisterInvariants(ir sdk.InvariantRegistry)

RegisterInvariants registers the wasm module invariants.

func (AppModule) Route

func (AppModule) Route() string

Route returns the message routing key for the wasm module.

type AppModuleBasic

type AppModuleBasic struct{}

AppModuleBasic defines the basic application module used by the wasm module.

func (AppModuleBasic) DefaultGenesis

func (AppModuleBasic) DefaultGenesis() json.RawMessage

DefaultGenesis returns default genesis state as raw bytes for the wasm module.

func (AppModuleBasic) GetQueryCmd

func (AppModuleBasic) GetQueryCmd(cdc *codec.Codec) *cobra.Command

GetQueryCmd returns no root query command for the wasm module.

func (AppModuleBasic) GetTxCmd

func (AppModuleBasic) GetTxCmd(cdc *codec.Codec) *cobra.Command

GetTxCmd returns the root tx command for the wasm module.

func (AppModuleBasic) Name

func (AppModuleBasic) Name() string

Name returns the wasm module's name.

func (AppModuleBasic) RegisterCodec

func (AppModuleBasic) RegisterCodec(cdc *codec.Codec)

RegisterCodec registers the wasm module's types for the given codec.

func (AppModuleBasic) RegisterRESTRoutes

func (AppModuleBasic) RegisterRESTRoutes(ctx context.CLIContext, rtr *mux.Router)

RegisterRESTRoutes registers the REST routes for the wasm module.

func (AppModuleBasic) ValidateGenesis

func (AppModuleBasic) ValidateGenesis(bz json.RawMessage) error

ValidateGenesis performs genesis state validation for the wasm module.

type Code

type Code = types.Code

type CodeInfo

type CodeInfo = types.CodeInfo

type Contract

type Contract = types.Contract

type ContractInfo

type ContractInfo = types.ContractInfo

type GenesisState

type GenesisState = types.GenesisState

type GetCodeResponse

type GetCodeResponse = keeper.GetCodeResponse

type Keeper

type Keeper = keeper.Keeper

type ListCodeResponse

type ListCodeResponse = keeper.ListCodeResponse

type Model

type Model = types.Model

type MsgExecuteContract

type MsgExecuteContract = types.MsgExecuteContract

type MsgInstantiateContract

type MsgInstantiateContract = types.MsgInstantiateContract

type MsgStoreCode

type MsgStoreCode = types.MsgStoreCode

type WasmConfig

type WasmConfig = types.WasmConfig

Directories

Path Synopsis
client
cli
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL