负责action的收发,鉴权
1.std:tie: 1.用于解构std::tuple中的元素,2.用来将多个变量构造成std::tuple;
2.std::tuple: 元组,使用它可以把多个不同类型的变量组合成一个对象;
默认包缓冲区尺寸:512byte,如果超过就malloc;具体的拆包代码在datastream.hpp里;
//读action数据,具体看eos的wasm_interface.cpp
uint32_t read_action_data( void* msg, uint32_t len );
//获得action数据尺寸,具体看eos的wasm_interface.cpp
uint32_t action_data_size();
//设置需要被通知的账号
void require_recipient( uint64_t name );
//验证权限
void require_auth( uint64_t name );
//是否有此权限
bool has_auth( uint64_t name );
//权限验证函数版本2
void require_auth2( uint64_t name, uint64_t permission );
//是否是一个账号
bool is_account( uint64_t name );
void send_inline(char *serialized_action, size_t size);
void send_context_free_inline(char *serialized_action, size_t size);
uint64_t publication_time();
uint64_t current_receiver();
struct permission_level { //权限等级
permission_level(name a, name p):actor(a), permission(p){}
permission_level(){}
name actor; //权限拥有着
name permission; //权限名
== //判断是否相等
< //判断是否小于
}
struct action_wrapper { //action封装类
static constexpr eosio::name action_name = eosio::name(Name); //action名字
eosio::name code_name; //调用的函数名字
std::vector
//转action
template
action to_action(Args&&... args)const
//发送
template
void send(Args&&... args)const
//
template
void send_context_free(Args&&... args)const
}