1 #ifndef CROMP_TRANSACTION_CLASS
2 #define CROMP_TRANSACTION_CLASS
38 OKAY = basis::common::OKAY,
42 DEFINE_OUTCOME(WAY_TOO_SMALL, -41,
"The package is too small for even "
44 DEFINE_OUTCOME(ILLEGAL_LENGTH, -42,
"The package claims a length larger "
A very common template for a dynamic array of bytes.
Outcomes describe the state of completion for an operation.
static basis::outcome peek_header(const basis::byte_array &packed_form, int &length)
static bool resynchronize(basis::byte_array &packed_form)
static void flatten(basis::byte_array &packed_form, const octopi::infoton &request, const octopi::octopus_request_id &id)
static bool unflatten(basis::byte_array &packed_form, basis::byte_array &still_flat, octopi::octopus_request_id &id)
static const char * outcome_name(const basis::outcome &to_name)
DEFINE_CLASS_NAME("cromp_transaction")
static int minimum_flat_size(const octopi::octopus_request_id &id)
virtual ~cromp_transaction()
An infoton is an individual request parcel with accompanying information.
Identifies requests made on an octopus by users.
An array of strings with some additional helpful methods.