pub struct ImportFunction {
pub function: Function,
pub rust_name: Ident,
pub js_ret: Option<Type>,
pub catch: bool,
pub variadic: bool,
pub structural: bool,
pub assert_no_shim: bool,
pub kind: ImportFunctionKind,
pub shim: Ident,
pub doc_comment: String,
pub wasm_bindgen: Path,
pub wasm_bindgen_futures: Path,
}
Expand description
A function being imported from JS
Fields§
§function: Function
The full signature of the function
rust_name: Ident
The name rust code will use
js_ret: Option<Type>
The type being returned
catch: bool
Whether to catch JS exceptions
variadic: bool
Whether the function is variadic on the JS side
structural: bool
Whether the function should use structural type checking
assert_no_shim: bool
Causes the Builder (See cli-support::js::binding::Builder) to error out if it finds itself generating code for a function with this signature
kind: ImportFunctionKind
The kind of function being imported
shim: Ident
The shim name to use in the generated code. The ‘shim’ is a function that appears in the generated JS as a wrapper around the actual function to import, performing any necessary conversions (EG adding a try/catch to change a thrown error into a Result)
doc_comment: String
The doc comment on this import, if one is provided
wasm_bindgen: Path
Path to wasm_bindgen
wasm_bindgen_futures: Path
Path to wasm_bindgen_futures
Trait Implementations§
source§impl Clone for ImportFunction
impl Clone for ImportFunction
source§fn clone(&self) -> ImportFunction
fn clone(&self) -> ImportFunction
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl TryToTokens for ImportFunction
impl TryToTokens for ImportFunction
source§fn try_to_tokens(&self, tokens: &mut TokenStream) -> Result<(), Diagnostic>
fn try_to_tokens(&self, tokens: &mut TokenStream) -> Result<(), Diagnostic>
Self
into tokens and add it to the TokenStream
source§fn try_to_token_stream(&self) -> Result<TokenStream, Diagnostic>
fn try_to_token_stream(&self) -> Result<TokenStream, Diagnostic>
Self
into a new TokenStream
Auto Trait Implementations§
impl Freeze for ImportFunction
impl RefUnwindSafe for ImportFunction
impl !Send for ImportFunction
impl !Sync for ImportFunction
impl Unpin for ImportFunction
impl UnwindSafe for ImportFunction
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)