struct
Lapis::DSL::StaticSignalBuilder
- Lapis::DSL::StaticSignalBuilder
- Struct
- Value
- Object
Overview
Declarative builder wrapping Tier 1 Lapis::Core::StaticSignalTable for
compile-time typed proc binding, slot construction, and zero-allocation emission.
Defined in:
lapis/dsl/frame_arena_dsl.crConstructors
Instance Method Summary
-
#bind(emitter_id : UInt64, signal_name : String, callback : Proc(*T, R), once : Bool = false) : UInt64 forall T, R
Binds a compile-time typed
Proc(*T, R)to(emitter_id, signal_name). -
#bind(emitter : Godot::Object, signal_name : String, callback : Proc(*T, R), once : Bool = false) : UInt64 forall T, R
Binds a compile-time typed
Proc(*T, R)to(emitter, signal_name). -
#bind_by_hash(emitter_id : UInt64, signal_hash : UInt64, callback : Proc(*T, R), once : Bool = false) : UInt64 forall T, R
Binds a compile-time typed
Proc(*T, R)to(emitter_id, signal_hash). -
#clear_emitter(emitter_id : UInt64) : Int32
Clears all signal bindings for
emitter_id. -
#clear_emitter(emitter : Godot::Object) : Int32
Clears all signal bindings for
emitter. -
#emit(emitter_id : UInt64, signal_name : String, *args : *T) : Int32 forall T
Emits
(emitter_id, signal_name)with*argswith strictly zero GC heap allocations. -
#emit(emitter : Godot::Object, signal_name : String, *args : *T) : Int32 forall T
Emits
(emitter, signal_name)with*argswith strictly zero GC heap allocations. -
#slot(emitter_id : UInt64, signal_name : String, *types : *T) forall T
Returns a typed
StaticSignalSlot(*T)bound to(emitter_id, signal_name). -
#slot(emitter : Godot::Object, signal_name : String | Symbol, *types : *T) forall T
Returns a typed
StaticSignalSlot(*T)bound to(emitter, signal_name). - #table : Lapis::Core::StaticSignalTable
-
#unbind(emitter_id : UInt64, signal_name : String, callback : Proc(*T, R)) : Bool forall T, R
Unbinds a matching
Proc(*T, R)from(emitter_id, signal_name). -
#unbind(emitter : Godot::Object, signal_name : String, callback : Proc(*T, R)) : Bool forall T, R
Unbinds a matching
Proc(*T, R)from(emitter, signal_name). -
#unbind(token : UInt64) : Bool
Unbinds a listener slot by
token.
Instance methods inherited from class Object
try?(&)try? try?
Constructor Detail
Instance Method Detail
Binds a compile-time typed Proc(*T, R) to (emitter_id, signal_name).
Binds a compile-time typed Proc(*T, R) to (emitter, signal_name).
Binds a compile-time typed Proc(*T, R) to (emitter_id, signal_hash).
Emits (emitter_id, signal_name) with *args with strictly zero GC heap allocations.
Emits (emitter, signal_name) with *args with strictly zero GC heap allocations.
Unbinds a matching Proc(*T, R) from (emitter_id, signal_name).
Unbinds a matching Proc(*T, R) from (emitter, signal_name).