#[repr(C)]pub struct Module { /* private fields */ }Expand description
ABI-stable owned Module for FFI operations.
Implementations§
Source§impl Module
impl Module
Sourcepub fn implements_function<Str: AsRef<str>>(
&self,
name: Str,
query_imports: bool,
) -> Result<bool>
pub fn implements_function<Str: AsRef<str>>( &self, name: Str, query_imports: bool, ) -> Result<bool>
Sourcepub fn get_function_metadata<Str: AsRef<str>>(
&self,
name: Str,
query_imports: bool,
) -> Result<Option<String>>
pub fn get_function_metadata<Str: AsRef<str>>( &self, name: Str, query_imports: bool, ) -> Result<Option<String>>
Get the metadata of a function the module exports.
The metadata is a JSON object whose type_schema entry is the
function’s type schema, as C++ TVM_FFI_DLL_EXPORT_TYPED_FUNC exports
it with TVM_FFI_DLL_EXPORT_INCLUDE_METADATA.
§Arguments
name- The name of the functionquery_imports- Whether to also check the modules this module imports
§Returns
Result<Option<String>>- The metadata as a JSON string, orNoneif the function has no metadata
Sourcepub fn get_function_doc<Str: AsRef<str>>(
&self,
name: Str,
query_imports: bool,
) -> Result<Option<String>>
pub fn get_function_doc<Str: AsRef<str>>( &self, name: Str, query_imports: bool, ) -> Result<Option<String>>
Get the doc string of a function the module exports.
The doc string is the one C++ TVM_FFI_DLL_EXPORT_TYPED_FUNC_DOC
exports.
§Arguments
name- The name of the functionquery_imports- Whether to also check the modules this module imports
§Returns
Result<Option<String>>- The doc string, orNoneif the function has none
Trait Implementations§
Source§impl AnyCompatible for Module
impl AnyCompatible for Module
Source§unsafe fn is_undefined(field: *const Self) -> bool
unsafe fn is_undefined(field: *const Self) -> bool
Whether
field, which holds a value of this type or all-zero bytes,
holds all-zero bytes that are no value of this type, as a null object
reference, a string of type index None or a zero device type: a field
that a creator left undefined for reflection to set, as C++ UnsafeInit
leaves a reference undefined (null). Unlike a C++ undefined reference,
it is no value; a nullable reference is Option<T>, whose None is a
defined value. Read moreSource§unsafe fn copy_to_any_view(src: &Self, data: &mut TVMFFIAny)
unsafe fn copy_to_any_view(src: &Self, data: &mut TVMFFIAny)
the value to copy to TVMFFIAny
unsafe fn check_any_strict(data: &TVMFFIAny) -> bool
Source§unsafe fn copy_from_any_view_after_check(data: &TVMFFIAny) -> Self
unsafe fn copy_from_any_view_after_check(data: &TVMFFIAny) -> Self
Copy value from TVMFFIAny after checking
caller must ensure that the value is compatible with the type
Source§unsafe fn move_to_any(src: Self, data: &mut TVMFFIAny)
unsafe fn move_to_any(src: Self, data: &mut TVMFFIAny)
consume the value to move to Any
Source§unsafe fn move_from_any_after_check(data: &mut TVMFFIAny) -> Self
unsafe fn move_from_any_after_check(data: &mut TVMFFIAny) -> Self
the value to move from TVMFFIAny
NOTE: pay very careful attention to avoid memory leak! Read more
Source§unsafe fn try_cast_from_any_view(data: &TVMFFIAny) -> Result<Self, ()>
unsafe fn try_cast_from_any_view(data: &TVMFFIAny) -> Result<Self, ()>
try to cast the value from AnyView
Source§fn get_mismatch_type_info(data: &TVMFFIAny) -> String
fn get_mismatch_type_info(data: &TVMFFIAny) -> String
Get the type key of a type when TryCastFromAnyView fails.
Source§fn type_schema() -> String
fn type_schema() -> String
The type schema of the type: the JSON object C++
TypeTraits<T>::TypeSchema writes, which the type schemas of functions
and fields embed. Read moreSource§impl<'a> ArgIntoRef for &'a Module
impl<'a> ArgIntoRef for &'a Module
Source§impl ArgIntoRef for Module
impl ArgIntoRef for Module
Source§impl<'a> IntoArgHolder for &'a Module
impl<'a> IntoArgHolder for &'a Module
Source§impl IntoArgHolder for Module
impl IntoArgHolder for Module
Source§impl ObjectRefCore for Module
impl ObjectRefCore for Module
type ContainerType = <ObjectArc<ModuleObj> as Deref>::Target
fn data(this: &Self) -> &ObjectArc<Self::ContainerType>
fn into_data(this: Self) -> ObjectArc<Self::ContainerType>
Source§unsafe fn from_data(data: ObjectArc<Self::ContainerType>) -> Self
unsafe fn from_data(data: ObjectArc<Self::ContainerType>) -> Self
Construct a reference view from an owning container handle. Read more
Source§fn same_as<Other: ObjectRefCore>(&self, other: &Other) -> bool
fn same_as<Other: ObjectRefCore>(&self, other: &Other) -> bool
Return whether two object references point to the same allocation.
Source§fn downcast_ref<T: ObjectCore>(&self) -> Option<&T>
fn downcast_ref<T: ObjectCore>(&self) -> Option<&T>
Auto Trait Implementations§
impl Freeze for Module
impl RefUnwindSafe for Module
impl Send for Module
impl Sync for Module
impl Unpin for Module
impl UnwindSafe for Module
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,
Source§impl<T> ObjectRefCast for Twhere
T: ObjectRefCore + AnyCompatible,
impl<T> ObjectRefCast for Twhere
T: ObjectRefCore + AnyCompatible,
Source§fn try_cast<B>(self) -> Result<B>where
B: ObjectRefCore + AnyCompatible,
fn try_cast<B>(self) -> Result<B>where
B: ObjectRefCore + AnyCompatible,
Consume
self and rewrap the underlying object as B without copying.