pub trait BigIntApi: HandleTypeInfo {
Show 29 methods // Required methods fn bi_new(&self, value: i64) -> Self::BigIntHandle; fn bi_set_int64(&self, destination: Self::BigIntHandle, value: i64); fn bi_unsigned_byte_length(&self, handle: Self::BigIntHandle) -> usize; fn bi_get_unsigned_bytes(&self, handle: Self::BigIntHandle) -> BoxedBytes; fn bi_set_unsigned_bytes( &self, destination: Self::BigIntHandle, bytes: &[u8] ); fn bi_signed_byte_length(&self, handle: Self::BigIntHandle) -> usize; fn bi_get_signed_bytes(&self, handle: Self::BigIntHandle) -> BoxedBytes; fn bi_set_signed_bytes(&self, destination: Self::BigIntHandle, bytes: &[u8]); fn bi_to_i64(&self, handle: Self::BigIntHandle) -> Option<i64>; fn bi_add( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle ); fn bi_sub( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle ); fn bi_sub_unsigned( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle ); fn bi_mul( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle ); fn bi_t_div( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle ); fn bi_t_mod( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle ); fn bi_abs(&self, dest: Self::BigIntHandle, x: Self::BigIntHandle); fn bi_neg(&self, dest: Self::BigIntHandle, x: Self::BigIntHandle); fn bi_sign(&self, x: Self::BigIntHandle) -> Sign; fn bi_cmp(&self, x: Self::BigIntHandle, y: Self::BigIntHandle) -> Ordering; fn bi_sqrt(&self, dest: Self::BigIntHandle, x: Self::BigIntHandle); fn bi_pow( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle ); fn bi_log2(&self, x: Self::BigIntHandle) -> u32; fn bi_and( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle ); fn bi_or( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle ); fn bi_xor( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle ); fn bi_shr( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, bits: usize ); fn bi_shl( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, bits: usize ); fn bi_to_string( &self, bi_handle: Self::BigIntHandle, str_handle: Self::ManagedBufferHandle ); // Provided method fn bi_new_zero(&self) -> Self::BigIntHandle { ... }
}
Expand description

Definition of the BigInt type required by the API.

Required Methods§

source

fn bi_new(&self, value: i64) -> Self::BigIntHandle

source

fn bi_set_int64(&self, destination: Self::BigIntHandle, value: i64)

source

fn bi_unsigned_byte_length(&self, handle: Self::BigIntHandle) -> usize

source

fn bi_get_unsigned_bytes(&self, handle: Self::BigIntHandle) -> BoxedBytes

source

fn bi_set_unsigned_bytes(&self, destination: Self::BigIntHandle, bytes: &[u8])

source

fn bi_signed_byte_length(&self, handle: Self::BigIntHandle) -> usize

source

fn bi_get_signed_bytes(&self, handle: Self::BigIntHandle) -> BoxedBytes

source

fn bi_set_signed_bytes(&self, destination: Self::BigIntHandle, bytes: &[u8])

source

fn bi_to_i64(&self, handle: Self::BigIntHandle) -> Option<i64>

source

fn bi_add( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle )

source

fn bi_sub( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle )

source

fn bi_sub_unsigned( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle )

source

fn bi_mul( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle )

source

fn bi_t_div( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle )

source

fn bi_t_mod( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle )

source

fn bi_abs(&self, dest: Self::BigIntHandle, x: Self::BigIntHandle)

source

fn bi_neg(&self, dest: Self::BigIntHandle, x: Self::BigIntHandle)

source

fn bi_sign(&self, x: Self::BigIntHandle) -> Sign

source

fn bi_cmp(&self, x: Self::BigIntHandle, y: Self::BigIntHandle) -> Ordering

source

fn bi_sqrt(&self, dest: Self::BigIntHandle, x: Self::BigIntHandle)

source

fn bi_pow( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle )

source

fn bi_log2(&self, x: Self::BigIntHandle) -> u32

source

fn bi_and( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle )

source

fn bi_or( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle )

source

fn bi_xor( &self, dest: Self::BigIntHandle, x: Self::BigIntHandle, y: Self::BigIntHandle )

source

fn bi_shr(&self, dest: Self::BigIntHandle, x: Self::BigIntHandle, bits: usize)

source

fn bi_shl(&self, dest: Self::BigIntHandle, x: Self::BigIntHandle, bits: usize)

source

fn bi_to_string( &self, bi_handle: Self::BigIntHandle, str_handle: Self::ManagedBufferHandle )

Provided Methods§

source

fn bi_new_zero(&self) -> Self::BigIntHandle

Implementors§