pub type uint128_t = u128;
pub type int128_t = i128;
pub type capi_name = u64;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct capi_public_key {
pub data: [crate::c_char; 34usize],
}
impl Default for capi_public_key {
fn default() -> Self {
unsafe { ::std::mem::zeroed() }
}
}
impl ::std::fmt::Debug for capi_public_key {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
write!(
f,
"capi_public_key {{ data: [{}] }}",
self.data
.iter()
.enumerate()
.map(|(i, v)| format!(
"{}{:?}",
if i > 0 { ", " } else { "" },
v
))
.collect::<String>()
)
}
}
impl ::std::cmp::PartialEq for capi_public_key {
fn eq(&self, other: &capi_public_key) -> bool {
&self.data[..] == &other.data[..]
}
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct capi_signature {
pub data: [u8; 66usize],
}
impl Default for capi_signature {
fn default() -> Self {
unsafe { ::std::mem::zeroed() }
}
}
impl ::std::fmt::Debug for capi_signature {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
write!(
f,
"capi_signature {{ data: [{}] }}",
self.data
.iter()
.enumerate()
.map(|(i, v)| format!(
"{}{:?}",
if i > 0 { ", " } else { "" },
v
))
.collect::<String>()
)
}
}
impl ::std::cmp::PartialEq for capi_signature {
fn eq(&self, other: &capi_signature) -> bool {
&self.data[..] == &other.data[..]
}
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct capi_checksum256 {
pub hash: [u8; 32usize],
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
pub struct capi_checksum160 {
pub hash: [u8; 20usize],
pub __bindgen_padding_0: [u32; 3usize],
}
#[repr(C)]
#[repr(align(16))]
#[derive(Copy, Clone)]
pub struct capi_checksum512 {
pub hash: [u8; 64usize],
}
impl Default for capi_checksum512 {
fn default() -> Self {
unsafe { ::std::mem::zeroed() }
}
}
impl ::std::fmt::Debug for capi_checksum512 {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
write!(
f,
"capi_checksum512 {{ hash: [{}] }}",
self.hash
.iter()
.enumerate()
.map(|(i, v)| format!(
"{}{:?}",
if i > 0 { ", " } else { "" },
v
))
.collect::<String>()
)
}
}
impl ::std::cmp::PartialEq for capi_checksum512 {
fn eq(&self, other: &capi_checksum512) -> bool {
&self.hash[..] == &other.hash[..]
}
}
extern "C" {
pub fn read_action_data(msg: *mut crate::c_void, len: u32) -> u32;
}
extern "C" {
pub fn action_data_size() -> u32;
}
extern "C" {
pub fn require_recipient(name: capi_name);
}
extern "C" {
pub fn require_auth(name: capi_name);
}
extern "C" {
pub fn has_auth(name: capi_name) -> bool;
}
extern "C" {
pub fn require_auth2(name: capi_name, permission: capi_name);
}
extern "C" {
pub fn is_account(name: capi_name) -> bool;
}
extern "C" {
pub fn send_inline(serialized_action: *mut crate::c_char, size: usize);
}
extern "C" {
pub fn send_context_free_inline(
serialized_action: *mut crate::c_char,
size: usize,
);
}
extern "C" {
pub fn publication_time() -> u64;
}
extern "C" {
pub fn current_receiver() -> capi_name;
}
extern "C" {
pub fn get_active_producers(producers: *mut capi_name, datalen: u32)
-> u32;
}
extern "C" {
pub fn assert_sha256(
data: *const crate::c_char,
length: u32,
hash: *const capi_checksum256,
);
}
extern "C" {
pub fn assert_sha1(
data: *const crate::c_char,
length: u32,
hash: *const capi_checksum160,
);
}
extern "C" {
pub fn assert_sha512(
data: *const crate::c_char,
length: u32,
hash: *const capi_checksum512,
);
}
extern "C" {
pub fn assert_ripemd160(
data: *const crate::c_char,
length: u32,
hash: *const capi_checksum160,
);
}
extern "C" {
pub fn sha256(
data: *const crate::c_char,
length: u32,
hash: *mut capi_checksum256,
);
}
extern "C" {
pub fn sha1(
data: *const crate::c_char,
length: u32,
hash: *mut capi_checksum160,
);
}
extern "C" {
pub fn sha512(
data: *const crate::c_char,
length: u32,
hash: *mut capi_checksum512,
);
}
extern "C" {
pub fn ripemd160(
data: *const crate::c_char,
length: u32,
hash: *mut capi_checksum160,
);
}
extern "C" {
pub fn recover_key(
digest: *const capi_checksum256,
sig: *const crate::c_char,
siglen: usize,
pub_: *mut crate::c_char,
publen: usize,
) -> crate::c_int;
}
extern "C" {
pub fn assert_recover_key(
digest: *const capi_checksum256,
sig: *const crate::c_char,
siglen: usize,
pub_: *const crate::c_char,
publen: usize,
);
}
extern "C" {
pub fn db_store_i64(
scope: u64,
table: capi_name,
payer: capi_name,
id: u64,
data: *const crate::c_void,
len: u32,
) -> i32;
}
extern "C" {
pub fn db_update_i64(
iterator: i32,
payer: capi_name,
data: *const crate::c_void,
len: u32,
);
}
extern "C" {
pub fn db_remove_i64(iterator: i32);
}
extern "C" {
pub fn db_get_i64(
iterator: i32,
data: *const crate::c_void,
len: u32,
) -> i32;
}
extern "C" {
pub fn db_next_i64(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_previous_i64(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_find_i64(
code: capi_name,
scope: u64,
table: capi_name,
id: u64,
) -> i32;
}
extern "C" {
pub fn db_lowerbound_i64(
code: capi_name,
scope: u64,
table: capi_name,
id: u64,
) -> i32;
}
extern "C" {
pub fn db_upperbound_i64(
code: capi_name,
scope: u64,
table: capi_name,
id: u64,
) -> i32;
}
extern "C" {
pub fn db_end_i64(code: capi_name, scope: u64, table: capi_name) -> i32;
}
extern "C" {
pub fn db_idx64_store(
scope: u64,
table: capi_name,
payer: capi_name,
id: u64,
secondary: *const u64,
) -> i32;
}
extern "C" {
pub fn db_idx64_update(
iterator: i32,
payer: capi_name,
secondary: *const u64,
);
}
extern "C" {
pub fn db_idx64_remove(iterator: i32);
}
extern "C" {
pub fn db_idx64_next(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_idx64_previous(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_idx64_find_primary(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut u64,
primary: u64,
) -> i32;
}
extern "C" {
pub fn db_idx64_find_secondary(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *const u64,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx64_lowerbound(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut u64,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx64_upperbound(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut u64,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx64_end(code: capi_name, scope: u64, table: capi_name) -> i32;
}
extern "C" {
pub fn db_idx128_store(
scope: u64,
table: capi_name,
payer: capi_name,
id: u64,
secondary: *const uint128_t,
) -> i32;
}
extern "C" {
pub fn db_idx128_update(
iterator: i32,
payer: capi_name,
secondary: *const uint128_t,
);
}
extern "C" {
pub fn db_idx128_remove(iterator: i32);
}
extern "C" {
pub fn db_idx128_next(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_idx128_previous(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_idx128_find_primary(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut uint128_t,
primary: u64,
) -> i32;
}
extern "C" {
pub fn db_idx128_find_secondary(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *const uint128_t,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx128_lowerbound(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut uint128_t,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx128_upperbound(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut uint128_t,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx128_end(code: capi_name, scope: u64, table: capi_name) -> i32;
}
extern "C" {
pub fn db_idx256_store(
scope: u64,
table: capi_name,
payer: capi_name,
id: u64,
data: *const uint128_t,
data_len: u32,
) -> i32;
}
extern "C" {
pub fn db_idx256_update(
iterator: i32,
payer: capi_name,
data: *const uint128_t,
data_len: u32,
);
}
extern "C" {
pub fn db_idx256_remove(iterator: i32);
}
extern "C" {
pub fn db_idx256_next(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_idx256_previous(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_idx256_find_primary(
code: capi_name,
scope: u64,
table: capi_name,
data: *mut uint128_t,
data_len: u32,
primary: u64,
) -> i32;
}
extern "C" {
pub fn db_idx256_find_secondary(
code: capi_name,
scope: u64,
table: capi_name,
data: *const uint128_t,
data_len: u32,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx256_lowerbound(
code: capi_name,
scope: u64,
table: capi_name,
data: *mut uint128_t,
data_len: u32,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx256_upperbound(
code: capi_name,
scope: u64,
table: capi_name,
data: *mut uint128_t,
data_len: u32,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx256_end(code: capi_name, scope: u64, table: capi_name) -> i32;
}
extern "C" {
pub fn db_idx_double_store(
scope: u64,
table: capi_name,
payer: capi_name,
id: u64,
secondary: *const f64,
) -> i32;
}
extern "C" {
pub fn db_idx_double_update(
iterator: i32,
payer: capi_name,
secondary: *const f64,
);
}
extern "C" {
pub fn db_idx_double_remove(iterator: i32);
}
extern "C" {
pub fn db_idx_double_next(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_idx_double_previous(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_idx_double_find_primary(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut f64,
primary: u64,
) -> i32;
}
extern "C" {
pub fn db_idx_double_find_secondary(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *const f64,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx_double_lowerbound(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut f64,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx_double_upperbound(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut f64,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx_double_end(
code: capi_name,
scope: u64,
table: capi_name,
) -> i32;
}
extern "C" {
pub fn db_idx_long_double_store(
scope: u64,
table: capi_name,
payer: capi_name,
id: u64,
secondary: *const f64,
) -> i32;
}
extern "C" {
pub fn db_idx_long_double_update(
iterator: i32,
payer: capi_name,
secondary: *const f64,
);
}
extern "C" {
pub fn db_idx_long_double_remove(iterator: i32);
}
extern "C" {
pub fn db_idx_long_double_next(iterator: i32, primary: *mut u64) -> i32;
}
extern "C" {
pub fn db_idx_long_double_previous(iterator: i32, primary: *mut u64)
-> i32;
}
extern "C" {
pub fn db_idx_long_double_find_primary(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut f64,
primary: u64,
) -> i32;
}
extern "C" {
pub fn db_idx_long_double_find_secondary(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *const f64,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx_long_double_lowerbound(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut f64,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx_long_double_upperbound(
code: capi_name,
scope: u64,
table: capi_name,
secondary: *mut f64,
primary: *mut u64,
) -> i32;
}
extern "C" {
pub fn db_idx_long_double_end(
code: capi_name,
scope: u64,
table: capi_name,
) -> i32;
}
extern "C" {
pub fn check_transaction_authorization(
trx_data: *const crate::c_char,
trx_size: u32,
pubkeys_data: *const crate::c_char,
pubkeys_size: u32,
perms_data: *const crate::c_char,
perms_size: u32,
) -> i32;
}
extern "C" {
pub fn check_permission_authorization(
account: capi_name,
permission: capi_name,
pubkeys_data: *const crate::c_char,
pubkeys_size: u32,
perms_data: *const crate::c_char,
perms_size: u32,
delay_us: u64,
) -> i32;
}
extern "C" {
pub fn get_permission_last_used(
account: capi_name,
permission: capi_name,
) -> i64;
}
extern "C" {
pub fn get_account_creation_time(account: capi_name) -> i64;
}
extern "C" {
pub fn prints(cstr: *const crate::c_char);
}
extern "C" {
pub fn prints_l(cstr: *const crate::c_char, len: u32);
}
extern "C" {
pub fn printi(value: i64);
}
extern "C" {
pub fn printui(value: u64);
}
extern "C" {
pub fn printi128(value: *const int128_t);
}
extern "C" {
pub fn printui128(value: *const uint128_t);
}
extern "C" {
pub fn printsf(value: f32);
}
extern "C" {
pub fn printdf(value: f64);
}
extern "C" {
pub fn printqf(value: *const f64);
}
extern "C" {
pub fn printn(name: u64);
}
extern "C" {
pub fn printhex(data: *const crate::c_void, datalen: u32);
}
extern "C" {
pub fn get_resource_limits(
account: capi_name,
ram_bytes: *mut i64,
net_weight: *mut i64,
cpu_weight: *mut i64,
);
}
extern "C" {
pub fn set_resource_limits(
account: capi_name,
ram_bytes: i64,
net_weight: i64,
cpu_weight: i64,
);
}
extern "C" {
pub fn set_proposed_producers(
producer_data: *mut crate::c_char,
producer_data_size: u32,
) -> i64;
}
extern "C" {
pub fn is_privileged(account: capi_name) -> bool;
}
extern "C" {
pub fn set_privileged(account: capi_name, is_priv: bool);
}
extern "C" {
pub fn set_blockchain_parameters_packed(
data: *mut crate::c_char,
datalen: u32,
);
}
extern "C" {
pub fn get_blockchain_parameters_packed(
data: *mut crate::c_char,
datalen: u32,
) -> u32;
}
extern "C" {
pub fn eosio_assert(test: u32, msg: *const crate::c_char);
}
extern "C" {
pub fn eosio_assert_message(
test: u32,
msg: *const crate::c_char,
msg_len: u32,
);
}
extern "C" {
pub fn eosio_assert_code(test: u32, code: u64);
}
extern "C" {
pub fn eosio_exit(code: i32);
}
extern "C" {
pub fn current_time() -> u64;
}
extern "C" {
pub fn send_deferred(
sender_id: *const uint128_t,
payer: capi_name,
serialized_transaction: *const crate::c_char,
size: usize,
replace_existing: u32,
);
}
extern "C" {
pub fn cancel_deferred(sender_id: *const uint128_t) -> crate::c_int;
}
extern "C" {
pub fn read_transaction(buffer: *mut crate::c_char, size: usize) -> usize;
}
extern "C" {
pub fn transaction_size() -> usize;
}
extern "C" {
pub fn tapos_block_num() -> crate::c_int;
}
extern "C" {
pub fn tapos_block_prefix() -> crate::c_int;
}
extern "C" {
pub fn expiration() -> u32;
}
extern "C" {
pub fn get_action(
type_: u32,
index: u32,
buff: *mut crate::c_char,
size: usize,
) -> crate::c_int;
}
extern "C" {
pub fn get_context_free_data(
index: u32,
buff: *mut crate::c_char,
size: usize,
) -> crate::c_int;
}