roblox_emulator: fix EnumItems.GetEnumItems
This commit is contained in:
parent
bb8e131464
commit
8bfc201d1f
@ -47,11 +47,13 @@ pub fn set_globals(_lua:&mlua::Lua,globals:&mlua::Table)->Result<(),mlua::Error>
|
|||||||
globals.set("Enum",Enums)
|
globals.set("Enum",Enums)
|
||||||
}
|
}
|
||||||
|
|
||||||
impl mlua::UserData for EnumItems<'_>{
|
impl mlua::UserData for EnumItems<'static>{
|
||||||
fn add_fields<F:mlua::UserDataFields<Self>>(_fields:&mut F){
|
fn add_fields<F:mlua::UserDataFields<Self>>(_fields:&mut F){
|
||||||
}
|
}
|
||||||
fn add_methods<M:mlua::UserDataMethods<Self>>(methods:&mut M){
|
fn add_methods<M:mlua::UserDataMethods<Self>>(methods:&mut M){
|
||||||
methods.add_meta_function("GetEnumItems",|_,this:EnumItems|Ok(this.ed.items.iter().map(EnumItem::known_name).collect::<Vec<_>>()));
|
methods.add_method("GetEnumItems",|_,this:&EnumItems,()|->mlua::Result<Vec<EnumItem>>{
|
||||||
|
Ok(this.ed.items.iter().map(EnumItem::known_name).collect())
|
||||||
|
});
|
||||||
methods.add_meta_function(mlua::MetaMethod::Index,|_,(this,val):(EnumItems,mlua::String)|{
|
methods.add_meta_function(mlua::MetaMethod::Index,|_,(this,val):(EnumItems,mlua::String)|{
|
||||||
let index=&*val.to_str()?;
|
let index=&*val.to_str()?;
|
||||||
Ok(this.ed.items.get_key_value(index).map(EnumItem::known_name))
|
Ok(this.ed.items.get_key_value(index).map(EnumItem::known_name))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user