AgentSkillsCN

cairo-if-let-while-let

当请求涉及在 Cairo 中计算哈希值或派生 Hash 时,讲解 Poseidon 与 Pedersen 哈希算法、Hash/HashState 特质,以及哈希结构体与数组的用法。

SKILL.md
--- frontmatter
name: cairo-if-let-while-let
description: Explain Cairo `if let` and `while let` concise control flow; use when a request involves matching a single pattern or looping over Option-like values in Cairo.

Cairo If Let and While Let

Overview

Use if let and while let for concise pattern matching when only one pattern matters.

Quick Use

  • Read references/if-let-while-let.md before answering.
  • Show the equivalent match when explaining tradeoffs.
  • Mention that if let can include an else branch.

Response Checklist

  • Use if let pattern = expr { ... } for single-variant matches.
  • Use while let pattern = expr { ... } to loop while a pattern matches.
  • Note that these forms are not exhaustive and can hide missing cases.

Example Requests

  • "How do I unwrap Option::Some with if let?"
  • "How do I loop while pop_front returns Some?"
  • "When should I prefer match instead of if let?"

Cairo by Example