refactor(packages): 0.R5 - a question no longer starts its state - 64 lazy starts ('if st.x == null { st.x = ... }' inside a getter) are the state's defaults, gear__ensure is gone, and ludic migrate state --tighten took mut off 208 package parameters: things_all, thing_find, gear_charge, gear_level, jobs_state and the rest read

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-27 00:51:03 +03:00
parent 54f5efb23f
commit 9862ec82e3
102 changed files with 320 additions and 351 deletions

View file

@ -5,8 +5,8 @@ import "ludic.base"
program WalletTest {
numbers float
function changes(wallet_st: mut WalletState) -> []MoneyChanged { return q_drain(wallet_changes(wallet_st)) }
function waiting(wallet_st: mut WalletState) -> int { return q_len(wallet_changes(wallet_st)) }
function changes(wallet_st: WalletState) -> []MoneyChanged { return q_drain(wallet_changes(wallet_st)) }
function waiting(wallet_st: WalletState) -> int { return q_len(wallet_changes(wallet_st)) }
test "earning and spending move the purse, and each says so" (wallet_st: mut WalletState) {
wallet_reset(wallet_st)

View file

@ -6,11 +6,10 @@ export property MoneyChanged {
export state WalletState {
wl_money: int = 0
wl_changes: Queue<MoneyChanged> = null
wl_changes: Queue<MoneyChanged> = wl_changes__new()
}
export function wallet_changes(wallet_st: mut WalletState) -> Queue<MoneyChanged> {
if wallet_st.wl_changes == null { wallet_st.wl_changes = queue_new("wallet.changes") }
export function wallet_changes(wallet_st: WalletState) -> Queue<MoneyChanged> {
return wallet_st.wl_changes
}
@ -62,3 +61,4 @@ export function wallet_system() -> System {
s.load = fn wallet_load
return s
}
function wl_changes__new() -> Queue<MoneyChanged> { return queue_new("wallet.changes") }