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