Explain Cairo smart pointers, especially Box types, boxed memory segments, and recursive types; use when a request involves boxing values, avoiding copies, or defining recursive types in Cairo.
SKILL.md
Cairo Smart Pointers
Overview
Explain how smart pointers manage memory safely, with a focus on Box<T>.
Quick Use
Read references/smart-pointers.md before answering.
Use BoxTrait::new and unbox() in examples.
Highlight when boxing is necessary (recursive types, large values).
Response Checklist
Explain that arrays and dictionaries are smart pointers owning memory segments.
Use Box<T> to store data in the boxed segment and move only pointers.