Refine packages.
This commit is contained in:
@@ -2,17 +2,20 @@ use crate::def_package;
|
||||
use crate::fn_native::FnPtr;
|
||||
use crate::plugin::*;
|
||||
|
||||
#[cfg(not(feature = "no_object"))]
|
||||
use crate::engine::make_getter;
|
||||
|
||||
def_package!(crate:BasicFnPackage:"Basic Fn functions.", lib, {
|
||||
set_exported_fn!(lib, "name", get_fn_name);
|
||||
|
||||
#[cfg(not(feature = "no_object"))]
|
||||
set_exported_fn!(lib, make_getter("name"), get_fn_name);
|
||||
lib.combine(exported_module!(fn_ptr_functions));
|
||||
});
|
||||
|
||||
#[export_fn]
|
||||
fn get_fn_name(f: &mut FnPtr) -> ImmutableString {
|
||||
f.get_fn_name().clone()
|
||||
#[export_module]
|
||||
mod fn_ptr_functions {
|
||||
#[inline(always)]
|
||||
fn name(f: &mut FnPtr) -> ImmutableString {
|
||||
f.get_fn_name().clone()
|
||||
}
|
||||
|
||||
#[rhai_fn(get = "name")]
|
||||
#[inline(always)]
|
||||
fn name_prop(f: &mut FnPtr) -> ImmutableString {
|
||||
name(f)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user