CDT  v4.2.0
инструменты разработчика
Транзакция

Типобезопасные C++-обёртки над C API транзакций COOPOS. Подробнее...

Классы

class  eosio::transaction_header
 Содержит сведения о транзакции Подробнее...
 
class  eosio::transaction
 
struct  eosio::onerror
 

Определения типов

typedef std::tuple< uint16_t, std::vector< char > > eosio::extension
 
typedef std::vector< extensioneosio::extensions_type
 

Функции

static onerror eosio::onerror::from_current_action ()
 
void eosio::send_deferred (const uint128_t &sender_id, name payer, const char *serialized_transaction, size_t size, bool replace=false)
 
action eosio::get_action (uint32_t type, uint32_t index)
 
size_t eosio::read_transaction (char *ptr, size_t sz)
 
int eosio::cancel_deferred (const uint128_t &sender_id)
 
size_t eosio::transaction_size ()
 
int eosio::tapos_block_num ()
 
int eosio::tapos_block_prefix ()
 
uint32_t eosio::expiration ()
 Возвращает срок действия текущей выполняемой транзакции. Подробнее...
 
int eosio::get_context_free_data (uint32_t index, char *buff, size_t size)
 

Подробное описание

Типобезопасные C++-обёртки над C API транзакций COOPOS.

Встроенное (inline) сообщение позволяет одному контракту отправить другому контракту сообщение, которое обрабатывается сразу после завершения обработки текущего сообщения, так что успех или неудача родительской транзакции зависят от успеха этого сообщения. Если встроенное сообщение завершается с ошибкой при обработке, то всё дерево транзакций и действий, укоренённое в блоке, помечается как неуспешное, и ни один эффект в базе данных не сохраняется.

Встроенные действия и отложенные транзакции должны соблюдать разрешения (permissions), доступные родительской транзакции или, в будущем, делегированные аккаунту контракта для последующего использования.

Заметки
Некоторые методы из transactioncapi можно вызывать напрямую из C++