{"id":"cometahn1042f/memoize","name":"memoize","scope":"cometahn1042f","platform":"roblox","description":"Memoize For Roblox","version":"0.1.2","latest":"0.1.2","versions":["0.1.0","0.1.1","0.1.2"],"license":"MIT","licenseRating":"safe","licenseCaveats":[],"licenseVerified":true,"dependencies":{},"integrity":"ecc406254955e8664863ba7c28fd129dfba8fb3077e8f2da78cffc97bf24b35a","likes":0,"downloads":0,"install":"forest install cometahn1042f/memoize","url":"https://forest.dev/p/roblox/cometahn1042f/memoize","files":"https://api.forest.dev/ai/package/roblox/cometahn1042f/memoize/files","readme":"# Memoize\n\nMemoize is a high-performance function memoization library for Luau. It caches evaluation results using weak-key tables to optimize recursive or expensive pure functions without creating permanent memory references.\n\n## Documentation Index\n\n- [API Reference](file:///c:/Lua/Libraries/Memoize/docs/api-reference.md): Functional exports (`memoize`, `memoize1`, `memoize2`, `memoize3`).\n- [Architecture & Design](file:///c:/Lua/Libraries/Memoize/docs/architecture-and-design.md): Trie-based weak caching model and nil support.\n- [Performance & Memory Profile](file:///c:/Lua/Libraries/Memoize/docs/performance-and-memory.md): Cache lookup overhead and garbage collection mechanics.\n- [Failure Modes & Exception Guarantees](file:///c:/Lua/Libraries/Memoize/docs/failure-modes.md): Non-pure function side effects and primitive key caveats.\n- [Executable Examples](file:///c:/Lua/Libraries/Memoize/docs/examples.md): Code samples for single and multi-argument memoization.\n\n## Quick Start\n\n```luau\nlocal Memoize = require(path.to.Memoize)\n\nlocal function expensiveCalculation(a: number, b: number): number\n    return a ^ b\nend\n\nlocal memoized = Memoize.memoize2(expensiveCalculation)\nprint(memoized(2, 10)) -- Computes 1024\nprint(memoized(2, 10)) -- Cached return 1024\n```","readmeTruncated":false}