pub enum NativeKernel {
Show 31 variants
MlkemNtt,
MlkemBaseMulW16,
ToMontW16,
Cbd2W16,
CompressW16,
DecompressW16,
ByteEncodeW16,
ByteDecodeW16,
SampleAW16,
SampleMatrixW16,
MlkemNoiseBatch,
AddModQW16,
SubModQW16,
ZerosW16,
MlkemInvNtt,
MlkemBaseMul,
Cbd2,
Cbd3,
Compress,
Decompress,
ByteEncode,
ByteDecode,
SampleNtt,
SampleA,
ToMont,
MlkemKeypair,
MlkemEncapsKem,
MlkemDecapsKem,
MldsaKeypair,
MldsaSign,
MldsaVerify,
}Expand description
One native kernel of the standard library.
Variants§
MlkemNtt
MlkemBaseMulW16
ToMontW16
Cbd2W16
CompressW16
DecompressW16
ByteEncodeW16
ByteDecodeW16
SampleAW16
SampleMatrixW16
MlkemNoiseBatch
AddModQW16
SubModQW16
ZerosW16
MlkemInvNtt
MlkemBaseMul
Cbd2
Cbd3
Compress
Decompress
ByteEncode
ByteDecode
SampleNtt
SampleA
ToMont
MlkemKeypair
MlkemEncapsKem
MlkemDecapsKem
MldsaKeypair
MldsaSign
MldsaVerify
Implementations§
Source§impl NativeKernel
impl NativeKernel
Sourcepub const ALL: &'static [NativeKernel]
pub const ALL: &'static [NativeKernel]
Every kernel, in code order. Append only.
Sourcepub const fn rust_path(self) -> (&'static str, &'static str)
pub const fn rust_path(self) -> (&'static str, &'static str)
The logicaffeine_system (module, function) the compiled tier calls.
Sourcepub fn from_code(code: i64) -> Option<NativeKernel>
pub fn from_code(code: i64) -> Option<NativeKernel>
The kernel with this code.
Sourcepub fn from_name(name: &str) -> Option<NativeKernel>
pub fn from_name(name: &str) -> Option<NativeKernel>
The kernel declared under name, if any.
Sourcepub fn refusal(self, backend: &str) -> String
pub fn refusal(self, backend: &str) -> String
Why a backend that cannot link the Rust kernels refuses a program that calls this one.
Sourcepub fn call(self, args: &[RuntimeValue]) -> Result<RuntimeValue, String>
pub fn call(self, args: &[RuntimeValue]) -> Result<RuntimeValue, String>
Run the kernel on already-evaluated arguments.
Trait Implementations§
Source§impl Clone for NativeKernel
impl Clone for NativeKernel
Source§fn clone(&self) -> NativeKernel
fn clone(&self) -> NativeKernel
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for NativeKernel
impl Debug for NativeKernel
Source§impl Hash for NativeKernel
impl Hash for NativeKernel
Source§impl PartialEq for NativeKernel
impl PartialEq for NativeKernel
impl Copy for NativeKernel
impl Eq for NativeKernel
impl StructuralPartialEq for NativeKernel
Auto Trait Implementations§
impl Freeze for NativeKernel
impl RefUnwindSafe for NativeKernel
impl Send for NativeKernel
impl Sync for NativeKernel
impl Unpin for NativeKernel
impl UnsafeUnpin for NativeKernel
impl UnwindSafe for NativeKernel
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.