pub struct Function {
pub name: String,
pub name_span: Span,
pub renamed_via_js_name: bool,
pub arguments: Vec<PatType>,
pub ret: Option<Type>,
pub rust_attrs: Vec<Attribute>,
pub rust_vis: Visibility,
pub unsafe: bool,
pub async: bool,
pub generate_typescript: bool,
pub generate_jsdoc: bool,
pub variadic: bool,
}
Expand description
Information about a function being imported or exported
Fields§
§name: String
The name of the function
name_span: Span
The span of the function’s name in Rust code
renamed_via_js_name: bool
Whether the function has a js_name attribute
arguments: Vec<PatType>
The arguments to the function
ret: Option<Type>
The return type of the function, if provided
rust_attrs: Vec<Attribute>
Any custom attributes being applied to the function
rust_vis: Visibility
The visibility of this function in Rust
unsafe: bool
Whether this is an unsafe
function
async: bool
Whether this is an async
function
generate_typescript: bool
Whether to generate a typescript definition for this function
generate_jsdoc: bool
Whether to generate jsdoc documentation for this function
variadic: bool
Whether this is a function with a variadict parameter
Implementations§
source§impl Function
impl Function
sourcepub fn infer_getter_property(&self) -> &str
pub fn infer_getter_property(&self) -> &str
If the rust object has a fn xxx(&self) -> MyType
method, get the name for a getter in
javascript (in this case xxx
, so you can write val = obj.xxx
)
sourcepub fn infer_setter_property(&self) -> Result<String, Diagnostic>
pub fn infer_setter_property(&self) -> Result<String, Diagnostic>
If the rust object has a fn set_xxx(&mut self, MyType)
style method, get the name
for a setter in javascript (in this case xxx
, so you can write obj.xxx = val
)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Function
impl RefUnwindSafe for Function
impl !Send for Function
impl !Sync for Function
impl Unpin for Function
impl UnwindSafe for Function
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
)