Conversation
|
|
||
| let crate_name = format_ident!("{}", crate_ident()?); | ||
| let class_name = get_class_name(&self_ty); | ||
| let module_name = format_ident!("__impl_exotic_{}__", class_name); |
There was a problem hiding this comment.
Should we consolidate this with the one in class to avoid duplication?
There was a problem hiding this comment.
I will rework this I am not satisfied. I think I can use the same trick we are using for the constructor with the double ref specialization.
|
hey, came across this while optimizing Rust/JS interop patterns. will this PR include support for get_own_property and get_own_property_names? I noticed they're TODO in ExoticMethodsHolder — those are the main callbacks we'd need. happy to help with the remaining work if useful. |
|
Honestly I dont have time to work on that right now, so @richarddd if you want to take it over or have someone else take it off my plate it works for me. |
We already have this
cf6f794 to
4bfe5eb
Compare
- Remove unused for<'a> lifetime bounds on exotic function type aliases - Replace CALLABLE/EXOTIC bool consts with ClassKind enum - Deduplicate handle_panic and handle_panic_exotic into shared inner method - Remove unused ToString import
4bfe5eb to
34db552
Compare
|
NP - are these |
@xaptronic seems in scope. will add! |
|
The reason I didnt do it previously is that the vtable is starting to get pretty big. I am not as fan that all classes use the same quickjs class id since it makes not nice to extend a rust class in js. |
Finishes #497