Documentation
¶
Index ¶
- Constants
- func EgressKey(destChain string, index int64) []byte
- func EgressLengthKey(destChain string) []byte
- func ErrIdenticalChains() sdk.Error
- func ErrInvalidSequence() sdk.Error
- func IngressSequenceKey(srcChain string) []byte
- func NewHandler(ibcm IBCMapper, ck bank.CoinKeeper) sdk.Handler
- func RegisterWire(cdc *wire.Codec)
- type IBCMapper
- func (ibcm IBCMapper) GetIngressSequence(ctx sdk.Context, srcChain string) int64
- func (ibcm IBCMapper) PostIBCPacket(ctx sdk.Context, packet IBCPacket) sdk.Error
- func (ibcm IBCMapper) ReceiveIBCPacket(ctx sdk.Context, packet IBCPacket) sdk.Error
- func (ibcm IBCMapper) SetIngressSequence(ctx sdk.Context, srcChain string, sequence int64)
- type IBCPacket
- type IBCReceiveMsg
- type IBCTransferMsg
Constants ¶
const (
// IBC errors reserve 200 - 299.
CodeInvalidSequence sdk.CodeType = 200
CodeIdenticalChains sdk.CodeType = 201
CodeUnknownRequest sdk.CodeType = sdk.CodeUnknownRequest
)
Variables ¶
This section is empty.
Functions ¶
func EgressKey ¶
func EgressKey(destChain string, index int64) []byte
Stores an outgoing IBC packet under "egress/chain_id/index".
func EgressLengthKey ¶
func EgressLengthKey(destChain string) []byte
Stores the number of outgoing IBC packets under "egress/index".
func ErrIdenticalChains ¶
func ErrIdenticalChains() sdk.Error
func ErrInvalidSequence ¶
func ErrInvalidSequence() sdk.Error
func IngressSequenceKey ¶
func IngressSequenceKey(srcChain string) []byte
Stores the sequence number of incoming IBC packet under "ingress/index".
func NewHandler ¶
func NewHandler(ibcm IBCMapper, ck bank.CoinKeeper) sdk.Handler
Types ¶
type IBCMapper ¶
type IBCMapper struct {
// contains filtered or unexported fields
}
func NewIBCMapper ¶
func NewIBCMapper(cdc *wire.Codec, key sdk.StoreKey) IBCMapper
XXX: The IBCMapper should not take a CoinKeeper. Rather have the CoinKeeper take an IBCMapper.
func (IBCMapper) GetIngressSequence ¶
func (ibcm IBCMapper) GetIngressSequence(ctx sdk.Context, srcChain string) int64
func (IBCMapper) PostIBCPacket ¶
func (ibcm IBCMapper) PostIBCPacket(ctx sdk.Context, packet IBCPacket) sdk.Error
XXX: This is not the public API. This will change in MVP2 and will henceforth only be invoked from another module directly and not through a user transaction. TODO: Handle invalid IBC packets and return errors.
func (IBCMapper) ReceiveIBCPacket ¶
func (ibcm IBCMapper) ReceiveIBCPacket(ctx sdk.Context, packet IBCPacket) sdk.Error
XXX: In the future every module is able to register it's own handler for handling it's own IBC packets. The "ibc" handler will only route the packets to the appropriate callbacks. XXX: For now this handles all interactions with the CoinKeeper. XXX: This needs to do some authentication checking.
func (IBCMapper) SetIngressSequence ¶
func (ibcm IBCMapper) SetIngressSequence(ctx sdk.Context, srcChain string, sequence int64)
type IBCPacket ¶
type IBCPacket struct {
SrcAddr sdk.Address
DestAddr sdk.Address
Coins sdk.Coins
SrcChain string
DestChain string
}
IBCPacket defines a piece of data that can be send between two separate blockchains.
func NewIBCPacket ¶
func NewIBCPacket(srcAddr sdk.Address, destAddr sdk.Address, coins sdk.Coins,
srcChain string, destChain string) IBCPacket
func (IBCPacket) ValidateBasic ¶
func (ibcp IBCPacket) ValidateBasic() sdk.Error
type IBCReceiveMsg ¶
type IBCReceiveMsg struct {
IBCPacket
Relayer sdk.Address
Sequence int64
}
IBCReceiveMsg defines the message that a relayer uses to post an IBCPacket to the destination chain.
func (IBCReceiveMsg) GetSignBytes ¶
func (msg IBCReceiveMsg) GetSignBytes() []byte
func (IBCReceiveMsg) GetSigners ¶
func (msg IBCReceiveMsg) GetSigners() []sdk.Address
x/bank/tx.go SendMsg.GetSigners()
func (IBCReceiveMsg) ValidateBasic ¶
func (msg IBCReceiveMsg) ValidateBasic() sdk.Error
type IBCTransferMsg ¶
type IBCTransferMsg struct {
IBCPacket
}
IBCTransferMsg defines how another module can send an IBCPacket.
func (IBCTransferMsg) GetSignBytes ¶
func (msg IBCTransferMsg) GetSignBytes() []byte
func (IBCTransferMsg) GetSigners ¶
func (msg IBCTransferMsg) GetSigners() []sdk.Address
x/bank/tx.go SendMsg.GetSigners()
func (IBCTransferMsg) ValidateBasic ¶
func (msg IBCTransferMsg) ValidateBasic() sdk.Error