cairo-custom-data-structures

star 3

Explain how to build custom data structures in Cairo using structs, traits, and dictionaries; use when a request involves implementing mutable collections (like a vector) or handling Destruct/Drop with Felt252Dict.

teddyjfpender By teddyjfpender schedule Updated 1/23/2026

name: cairo-custom-data-structures description: Explain how to build custom data structures in Cairo using structs, traits, and dictionaries; use when a request involves implementing mutable collections (like a vector) or handling Destruct/Drop with Felt252Dict.

Cairo Custom Data Structures

Overview

Guide users through building mutable data structures on top of dictionaries and traits, including proper destruction.

Quick Use

  • Read references/custom-data-structures.md before answering.
  • Emphasize that arrays are immutable; use Felt252Dict for mutable storage.
  • Call out Destruct implementations for structs containing dictionaries.

Response Checklist

  • Define a trait interface for the structure's operations.
  • Store values in a Felt252Dict and track len separately when emulating vectors.
  • Use Nullable when storing generic T in a dict.
  • Implement Destruct to squash() dictionaries.

Example Requests

  • "How do I build a mutable vector in Cairo?"
  • "Why does my struct with a dictionary need Destruct?"
  • "How can I update a value by index?"

Cairo by Example

Install via CLI
npx skills add https://github.com/teddyjfpender/skill-issues --skill cairo-custom-data-structures
Repository Details
star Stars 3
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator
teddyjfpender
teddyjfpender Explore all skills →