From e59db7c7887a1a3832aaa4ea6a89bd4b5e194c5a Mon Sep 17 00:00:00 2001 From: Max Whitehead <35712032+MaxCWhitehead@users.noreply.github.com> Date: Wed, 10 Jan 2024 19:44:56 -0800 Subject: [PATCH] build: Update piccolo to crates.io 0.3 (#303) Haven't really tested this yet but it builds - might need to update Jumpy too. --- Cargo.lock | 17 ++++++---- framework_crates/bones_scripting/Cargo.toml | 9 +++-- framework_crates/bones_scripting/src/lua.rs | 10 +++--- .../bones_scripting/src/lua/asset.rs | 16 ++++----- .../bones_scripting/src/lua/bindings.rs | 14 ++++---- .../src/lua/bindings/assets.rs | 6 ++-- .../src/lua/bindings/components.rs | 14 ++++---- .../src/lua/bindings/ecsref.rs | 8 ++--- .../src/lua/bindings/entities.rs | 18 +++++----- .../src/lua/bindings/resources.rs | 8 ++--- .../src/lua/bindings/schema.rs | 34 +++++++++---------- .../bones_scripting/src/lua/bindings/world.rs | 10 +++--- 12 files changed, 83 insertions(+), 81 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8895ce9379..82b12f57cd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2379,8 +2379,9 @@ dependencies = [ [[package]] name = "gc-arena" -version = "0.4.0" -source = "git+https://github.com/kyren/gc-arena.git#0a4bffa8ca5fc4c6faa5c0658a81404ee09ec968" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57b2e43b3fc51b9900cc9ced1c4630dcbfae1859573102a84d2231ac744c1208" dependencies = [ "allocator-api2", "gc-arena-derive", @@ -2390,8 +2391,9 @@ dependencies = [ [[package]] name = "gc-arena-derive" -version = "0.4.0" -source = "git+https://github.com/kyren/gc-arena.git#0a4bffa8ca5fc4c6faa5c0658a81404ee09ec968" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96f3c487d429eaa928334f7f2ca7b14734f1c2f4020d2b08c1f0b4d9c70e4f17" dependencies = [ "proc-macro2", "quote", @@ -3796,15 +3798,16 @@ dependencies = [ [[package]] name = "piccolo" -version = "0.2.0" -source = "git+https://github.com/kyren/piccolo.git?rev=d25ef38#d25ef38068229c96e24704fe499e412d0bef6e84" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93dd1815b42446904bb2689d1c5d7680e8c68113d5b15a5a3297ba6c7a5f84af" dependencies = [ + "ahash", "allocator-api2", "anyhow", "gc-arena", "hashbrown 0.14.3", "rand 0.8.5", - "rustc-hash", "thiserror", ] diff --git a/framework_crates/bones_scripting/Cargo.toml b/framework_crates/bones_scripting/Cargo.toml index be6f1e8830..9d51173fd0 100644 --- a/framework_crates/bones_scripting/Cargo.toml +++ b/framework_crates/bones_scripting/Cargo.toml @@ -16,14 +16,13 @@ tracing = "0.1" bevy_tasks = "0.11" bones_lib = { version = "0.3", path = "../bones_lib" } bones_asset = { version = "0.3", path = "../bones_asset" } -piccolo = { git = "https://github.com/kyren/piccolo.git", rev = "d25ef38" } -gc-arena = { git = "https://github.com/kyren/gc-arena.git" } -gc-arena-derive = { git = "https://github.com/kyren/gc-arena.git" } +piccolo = { version = "0.3" } +gc-arena = { version = "0.5" } +gc-arena-derive = { version = "0.5" } send_wrapper = "0.6.0" [target.'cfg(target_arch = "wasm32")'.dependencies] wasm-bindgen-futures = "0.4" [dev-dependencies] -piccolo = { git = "https://github.com/kyren/piccolo.git", rev = "d25ef38" } - +piccolo = { version = "0.3" } diff --git a/framework_crates/bones_scripting/src/lua.rs b/framework_crates/bones_scripting/src/lua.rs index aad75c2731..1ab3d4c6ce 100644 --- a/framework_crates/bones_scripting/src/lua.rs +++ b/framework_crates/bones_scripting/src/lua.rs @@ -9,7 +9,7 @@ pub use piccolo; use piccolo::{ compiler::{LineNumber, ParseError}, registry::{Fetchable, Stashable}, - AnyUserData, Closure, Context, Executor, FromValue, Lua, PrototypeError, StashedClosure, Table, + Closure, Context, Executor, FromValue, Lua, PrototypeError, StashedClosure, Table, UserData, Value, }; use send_wrapper::SendWrapper; @@ -140,8 +140,8 @@ impl<'gc> FromValue<'gc> for &'gc WorldRef { impl WorldRef { /// Convert this [`WorldRef`] into a Lua userdata. - pub fn into_userdata(self, ctx: Context<'_>) -> AnyUserData<'_> { - let data = AnyUserData::new_static(&ctx, self); + pub fn into_userdata(self, ctx: Context<'_>) -> UserData<'_> { + let data = UserData::new_static(&ctx, self); data.set_metatable( &ctx, Some(ctx.singletons().get(ctx, bindings::world::metatable)), @@ -160,7 +160,7 @@ impl WorldRef { ("resources", bindings::resources::metatable), ("assets", bindings::assets::metatable), ] { - let data = AnyUserData::new_static(&ctx, self.clone()); + let data = UserData::new_static(&ctx, self.clone()); data.set_metatable(&ctx, Some(ctx.singletons().get(ctx, metatable))); env.set(ctx, name, data).unwrap(); } @@ -247,7 +247,7 @@ impl Default for EngineState { ctx.globals().set( ctx, "luasingletons", - AnyUserData::new_static(&ctx, LuaSingletons::default()), + UserData::new_static(&ctx, LuaSingletons::default()), )?; Ok(()) }) diff --git a/framework_crates/bones_scripting/src/lua/asset.rs b/framework_crates/bones_scripting/src/lua/asset.rs index 72ecbaba9a..60999531a0 100644 --- a/framework_crates/bones_scripting/src/lua/asset.rs +++ b/framework_crates/bones_scripting/src/lua/asset.rs @@ -2,7 +2,7 @@ use std::sync::Arc; use bevy_tasks::ThreadExecutor; use piccolo::{ - AnyCallback, AnyUserData, CallbackReturn, Closure, Context, Executor, StashedClosure, Table, + Callback, CallbackReturn, Closure, Context, Executor, StashedClosure, Table, UserData, }; use send_wrapper::SendWrapper; @@ -95,7 +95,7 @@ impl LuaPlugin { let executor = lua.try_enter(|ctx| { let env = ctx.singletons().get(ctx, super::bindings::env); - let session_var = AnyUserData::new_static(&ctx, self.systems.clone()); + let session_var = UserData::new_static(&ctx, self.systems.clone()); session_var.set_metatable(&ctx, Some(ctx.singletons().get(ctx, session_metatable))); env.set(ctx, "session", session_var)?; @@ -118,7 +118,7 @@ fn session_metatable(ctx: Context) -> Table { .set( ctx, "__tostring", - AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { stack.push_front( piccolo::String::from_static(&ctx, "Session { add_system_to_stage }").into(), ); @@ -136,8 +136,8 @@ fn session_metatable(ctx: Context) -> Table { let add_startup_system_callback = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { - let (this, closure): (AnyUserData, Closure) = stack.consume(ctx)?; + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + let (this, closure): (UserData, Closure) = stack.consume(ctx)?; let this = this.downcast_static::()?; let mut systems = this.borrow_mut(); @@ -151,8 +151,8 @@ fn session_metatable(ctx: Context) -> Table { ); let add_system_to_stage_callback = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { - let (this, stage, closure): (AnyUserData, AnyUserData, Closure) = stack.consume(ctx)?; + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + let (this, stage, closure): (UserData, UserData, Closure) = stack.consume(ctx)?; let this = this.downcast_static::()?; let stage = stage.downcast_static::()?; @@ -170,7 +170,7 @@ fn session_metatable(ctx: Context) -> Table { .set( ctx, "__index", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let (_this, key): (piccolo::Value, piccolo::String) = stack.consume(ctx)?; #[allow(clippy::single_match)] diff --git a/framework_crates/bones_scripting/src/lua/bindings.rs b/framework_crates/bones_scripting/src/lua/bindings.rs index a24384e6c9..9a4a5c9d93 100644 --- a/framework_crates/bones_scripting/src/lua/bindings.rs +++ b/framework_crates/bones_scripting/src/lua/bindings.rs @@ -1,7 +1,7 @@ use bones_lib::prelude::*; use gc_arena_derive::Collect; use piccolo::{ - self as lua, meta_ops, meta_ops::MetaResult, AnyCallback, AnySequence, CallbackReturn, Context, + self as lua, meta_ops, meta_ops::MetaResult, BoxSequence, Callback, CallbackReturn, Context, Error, Sequence, SequencePoll, Stack, }; @@ -25,8 +25,8 @@ pub fn register_lua_typedata() { .unwrap(); } -pub fn no_newindex(ctx: Context) -> AnyCallback { - AnyCallback::from_fn(&ctx, |_ctx, _fuel, _stack| { +pub fn no_newindex(ctx: Context) -> Callback { + Callback::from_fn(&ctx, |_ctx, _fuel, _stack| { Err(anyhow::format_err!("Creating fields not allowed on this type").into()) }) } @@ -56,14 +56,14 @@ pub fn env(ctx: Context) -> Table { ("Last", CoreStage::Last), ] { core_stage_table - .set(ctx, name, AnyUserData::new_static(&ctx, stage)) + .set(ctx, name, UserData::new_static(&ctx, stage)) .unwrap(); } env.set(ctx, "CoreStage", core_stage_table).unwrap(); macro_rules! add_log_fn { ($level:ident) => { - let $level = AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { + let $level = Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { #[derive(Debug, Copy, Clone, Eq, PartialEq, Collect)] #[collect(require_static)] enum Mode { @@ -109,7 +109,7 @@ pub fn env(ctx: Context) -> Table { } } - Ok(CallbackReturn::Sequence(AnySequence::new( + Ok(CallbackReturn::Sequence(BoxSequence::new( &ctx, PrintSeq { mode: Mode::Init, @@ -136,7 +136,7 @@ pub fn env(ctx: Context) -> Table { .set( ctx, "__newindex", - AnyCallback::from_fn(&ctx, |_ctx, _fuel, _stack| { + Callback::from_fn(&ctx, |_ctx, _fuel, _stack| { Err(anyhow::format_err!( "Cannot set global variables, you must use `world` \ to persist any state across frames." diff --git a/framework_crates/bones_scripting/src/lua/bindings/assets.rs b/framework_crates/bones_scripting/src/lua/bindings/assets.rs index e3b2b33245..f8d45cabd2 100644 --- a/framework_crates/bones_scripting/src/lua/bindings/assets.rs +++ b/framework_crates/bones_scripting/src/lua/bindings/assets.rs @@ -9,7 +9,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__tostring", - AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { stack.push_front(piccolo::String::from_static(&ctx, "Assets { root, get }").into()); Ok(CallbackReturn::Return) }), @@ -18,7 +18,7 @@ pub fn metatable(ctx: Context) -> Table { let get_callback = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let (world, ecsref): (&WorldRef, &EcsRef) = stack.consume(ctx)?; let b = ecsref.borrow(); @@ -43,7 +43,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__index", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let (world, key): (&WorldRef, lua::Value) = stack.consume(ctx)?; if let Value::String(key) = key { diff --git a/framework_crates/bones_scripting/src/lua/bindings/components.rs b/framework_crates/bones_scripting/src/lua/bindings/components.rs index cdd9b58a5c..b79983f162 100644 --- a/framework_crates/bones_scripting/src/lua/bindings/components.rs +++ b/framework_crates/bones_scripting/src/lua/bindings/components.rs @@ -6,7 +6,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__tostring", - AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { stack.push_front( piccolo::String::from_static(&ctx, "Components { insert, remove, get }").into(), ); @@ -20,8 +20,8 @@ pub fn metatable(ctx: Context) -> Table { let get_callback = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { - let (world, entity_ecsref, schema): (&WorldRef, &EcsRef, AnyUserData) = + Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { + let (world, entity_ecsref, schema): (&WorldRef, &EcsRef, UserData) = stack.consume(ctx)?; let b = entity_ecsref.borrow(); @@ -53,7 +53,7 @@ pub fn metatable(ctx: Context) -> Table { ); let insert_callback = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { let (world, entity_ecsref, value_ecsref): (&WorldRef, &EcsRef, &EcsRef) = stack.consume(ctx)?; @@ -78,8 +78,8 @@ pub fn metatable(ctx: Context) -> Table { ); let remove_callback = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { - let (world, entity_ecsref, schema): (&WorldRef, &EcsRef, AnyUserData) = + Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { + let (world, entity_ecsref, schema): (&WorldRef, &EcsRef, UserData) = stack.consume(ctx)?; let b = entity_ecsref.borrow(); @@ -102,7 +102,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__index", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let (_world, key): (&WorldRef, lua::Value) = stack.consume(ctx)?; if let Value::String(key) = key { diff --git a/framework_crates/bones_scripting/src/lua/bindings/ecsref.rs b/framework_crates/bones_scripting/src/lua/bindings/ecsref.rs index aeb688ba8a..621313f410 100644 --- a/framework_crates/bones_scripting/src/lua/bindings/ecsref.rs +++ b/framework_crates/bones_scripting/src/lua/bindings/ecsref.rs @@ -50,7 +50,7 @@ impl EcsRef { /// Convert into a lua value. pub fn into_value(self, ctx: Context) -> Value { let metatable = ctx.singletons().get(ctx, self.metatable_fn()); - let ecsref = AnyUserData::new_static(&ctx, self); + let ecsref = UserData::new_static(&ctx, self); ecsref.set_metatable(&ctx, Some(metatable)); ecsref.into() } @@ -299,7 +299,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__tostring", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let this: &EcsRef = stack.consume(ctx)?; let b = this.borrow(); @@ -318,7 +318,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__index", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let (this, key): (&EcsRef, lua::Value) = stack.consume(ctx)?; let mut newref = this.clone(); @@ -359,7 +359,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__newindex", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let (this, key, newvalue): (&EcsRef, lua::Value, lua::Value) = stack.consume(ctx)?; diff --git a/framework_crates/bones_scripting/src/lua/bindings/entities.rs b/framework_crates/bones_scripting/src/lua/bindings/entities.rs index bd07d2ff31..109962b254 100644 --- a/framework_crates/bones_scripting/src/lua/bindings/entities.rs +++ b/framework_crates/bones_scripting/src/lua/bindings/entities.rs @@ -10,7 +10,7 @@ pub fn entities_metatable(ctx: Context) -> Table { .set( ctx, "__tostring", - AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { stack.push_front( piccolo::String::from_static(&ctx, "Entities { create, kill, iter_with }") .into(), @@ -25,7 +25,7 @@ pub fn entities_metatable(ctx: Context) -> Table { let create_callback = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let this: &EcsRef = stack.consume(ctx)?; let mut b = this.borrow_mut(); @@ -44,7 +44,7 @@ pub fn entities_metatable(ctx: Context) -> Table { ); let kill_callback = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let (this, entity_ecsref): (&EcsRef, &EcsRef) = stack.consume(ctx)?; let mut b = this.borrow_mut(); let entities = b.schema_ref_mut()?.cast_into_mut::(); @@ -58,8 +58,8 @@ pub fn entities_metatable(ctx: Context) -> Table { ); let iter_with_callback = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { - let (this, schema_args): (&EcsRef, Variadic>) = stack.consume(ctx)?; + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + let (this, schema_args): (&EcsRef, Variadic>) = stack.consume(ctx)?; let mut b = this.borrow_mut(); let entities = b.schema_ref_mut()?.cast_into_mut::(); let world = ctx @@ -99,8 +99,8 @@ pub fn entities_metatable(ctx: Context) -> Table { schemas: Vec<&'static Schema>, } - let iter_fn = AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { - let state: AnyUserData = stack.consume(ctx)?; + let iter_fn = Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { + let state: UserData = stack.consume(ctx)?; let state = state.downcast_static::>()?; let mut state = state.borrow_mut(); let next_ent = state.entities.next(); @@ -137,7 +137,7 @@ pub fn entities_metatable(ctx: Context) -> Table { }); let iterator_state = - AnyUserData::new_static(&ctx, AtomicCell::new(IteratorState { entities, schemas })); + UserData::new_static(&ctx, AtomicCell::new(IteratorState { entities, schemas })); stack.replace(ctx, (iter_fn, iterator_state)); @@ -149,7 +149,7 @@ pub fn entities_metatable(ctx: Context) -> Table { .set( ctx, "__index", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let (_this, key): (lua::Value, lua::String) = stack.consume(ctx)?; #[allow(clippy::single_match)] diff --git a/framework_crates/bones_scripting/src/lua/bindings/resources.rs b/framework_crates/bones_scripting/src/lua/bindings/resources.rs index d026f72f48..e72cf9e133 100644 --- a/framework_crates/bones_scripting/src/lua/bindings/resources.rs +++ b/framework_crates/bones_scripting/src/lua/bindings/resources.rs @@ -10,7 +10,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__tostring", - AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { stack.push_front( piccolo::String::from_static(&ctx, "Resources { len, get }").into(), ); @@ -21,8 +21,8 @@ pub fn metatable(ctx: Context) -> Table { let get_callback = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { - let (world, schema): (&WorldRef, AnyUserData) = stack.consume(ctx)?; + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + let (world, schema): (&WorldRef, UserData) = stack.consume(ctx)?; let schema = schema.downcast_static::<&Schema>()?; @@ -44,7 +44,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__index", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let (_world, key): (&WorldRef, lua::String) = stack.consume(ctx)?; #[allow(clippy::single_match)] diff --git a/framework_crates/bones_scripting/src/lua/bindings/schema.rs b/framework_crates/bones_scripting/src/lua/bindings/schema.rs index 325b654a6b..d9f2f3562f 100644 --- a/framework_crates/bones_scripting/src/lua/bindings/schema.rs +++ b/framework_crates/bones_scripting/src/lua/bindings/schema.rs @@ -4,8 +4,8 @@ use super::*; /// an `entities:iter_with()` lua call. pub(super) struct WithoutSchema(pub &'static Schema); -pub fn schema_fn(ctx: Context) -> AnyCallback { - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { +pub fn schema_fn(ctx: Context) -> Callback { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let singletons = ctx.singletons(); let schema_metatable = singletons.get(ctx, schema::metatable); @@ -24,7 +24,7 @@ pub fn schema_fn(ctx: Context) -> AnyCallback { } // TODO: setup `toString` implementation so that printing schemas gives more information. - let schema = AnyUserData::new_static(&ctx, next_match); + let schema = UserData::new_static(&ctx, next_match); schema.set_metatable(&ctx, Some(schema_metatable)); stack.push_front(schema.into()); } else { @@ -35,15 +35,15 @@ pub fn schema_fn(ctx: Context) -> AnyCallback { }) } -pub fn schema_of_fn(ctx: Context) -> AnyCallback { - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { +pub fn schema_of_fn(ctx: Context) -> Callback { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let singletons = ctx.singletons(); let schema_metatable = singletons.get(ctx, schema::metatable); let ecsref: &EcsRef = stack.consume(ctx)?; let schema = ecsref.borrow().schema_ref()?.schema(); - let schema = AnyUserData::new_static(&ctx, schema); + let schema = UserData::new_static(&ctx, schema); schema.set_metatable(&ctx, Some(schema_metatable)); stack.replace(ctx, schema); @@ -57,8 +57,8 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__tostring", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { - let this: AnyUserData = stack.consume(ctx)?; + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + let this: UserData = stack.consume(ctx)?; let this = this.downcast_static::<&Schema>()?; let s = piccolo::String::from_slice(&ctx, &format!("Schema({})", this.full_name)); @@ -69,8 +69,8 @@ pub fn metatable(ctx: Context) -> Table { .unwrap(); let create_fn = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { - let this: AnyUserData = stack.consume(ctx)?; + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + let this: UserData = stack.consume(ctx)?; let this = this.downcast_static::<&Schema>()?; let ecsref = EcsRef { @@ -86,16 +86,16 @@ pub fn metatable(ctx: Context) -> Table { let without_fn = ctx.registry().stash( &ctx, - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { - let this: AnyUserData = stack.consume(ctx)?; + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + let this: UserData = stack.consume(ctx)?; let this = this.downcast_static::<&Schema>()?; - stack.replace(ctx, AnyUserData::new_static(&ctx, WithoutSchema(this))); + stack.replace(ctx, UserData::new_static(&ctx, WithoutSchema(this))); Ok(CallbackReturn::Return) }), ); - let eq_fn = AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { - let (this, other): (AnyUserData, AnyUserData) = stack.consume(ctx)?; + let eq_fn = Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + let (this, other): (UserData, UserData) = stack.consume(ctx)?; let (this, other) = ( this.downcast_static::<&Schema>()?, other.downcast_static::<&Schema>()?, @@ -109,8 +109,8 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__index", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { - let (this, key): (AnyUserData, lua::String) = stack.consume(ctx)?; + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + let (this, key): (UserData, lua::String) = stack.consume(ctx)?; let this = this.downcast_static::<&Schema>()?; match key.as_bytes() { diff --git a/framework_crates/bones_scripting/src/lua/bindings/world.rs b/framework_crates/bones_scripting/src/lua/bindings/world.rs index a37208a365..e7f5dccd9e 100644 --- a/framework_crates/bones_scripting/src/lua/bindings/world.rs +++ b/framework_crates/bones_scripting/src/lua/bindings/world.rs @@ -6,7 +6,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__tostring", - AnyCallback::from_fn(&ctx, |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, |ctx, _fuel, mut stack| { stack.push_front( piccolo::String::from_static(&ctx, "World { resources, components, assets }") .into(), @@ -23,7 +23,7 @@ pub fn metatable(ctx: Context) -> Table { .set( ctx, "__index", - AnyCallback::from_fn(&ctx, move |ctx, _fuel, mut stack| { + Callback::from_fn(&ctx, move |ctx, _fuel, mut stack| { let (world, key): (&WorldRef, lua::String) = stack.consume(ctx)?; let singletons = ctx.singletons(); @@ -33,17 +33,17 @@ pub fn metatable(ctx: Context) -> Table { match key.as_bytes() { b"resources" => { - let resources = AnyUserData::new_static(&ctx, world.clone()); + let resources = UserData::new_static(&ctx, world.clone()); resources.set_metatable(&ctx, Some(resources_metatable)); stack.push_front(resources.into()); } b"components" => { - let components = AnyUserData::new_static(&ctx, world.clone()); + let components = UserData::new_static(&ctx, world.clone()); components.set_metatable(&ctx, Some(components_metatable)); stack.push_front(components.into()); } b"assets" => { - let assets = AnyUserData::new_static(&ctx, world.clone()); + let assets = UserData::new_static(&ctx, world.clone()); assets.set_metatable(&ctx, Some(assets_metatable)); stack.push_front(assets.into()); }