AgentSkillsCN

cairo-match

当请求涉及在 Cairo 中编写或理解 `macro` 定义时,讲解 Cairo 的声明式宏、宏卫生,以及宏与函数之间的权衡。

SKILL.md
--- frontmatter
name: cairo-match
description: Explain Cairo match expressions, pattern matching on enums, exhaustiveness, and wildcard arms; use when a request involves matching Option/Result or enum values in Cairo.

Cairo Match

Overview

Explain how to use match for branching on enum values and destructuring data safely.

Quick Use

  • Read references/match.md before answering.
  • Include an exhaustive match with a _ fallback when appropriate.
  • Emphasize that all arms must return the same type when used as an expression.

Response Checklist

  • Use fully qualified variants like EnumName::Variant in patterns.
  • Bind inner data with patterns like EnumName::Variant(value).
  • Keep match arms exhaustive; add _ only when appropriate.

Example Requests

  • "How do I match on an Option in Cairo?"
  • "Why is my match non-exhaustive?"
  • "How do I extract the value from an enum variant?"

Cairo by Example