What problem does it solve? Writing Dart code that validates and extracts data from JSON, records, or class hierarchies often leads to verbose, error-prone conditional logic. This Skill guides the correct use of Dart 3 pattern matching so data is validated, destructured, and handled exhaustively in fewer lines. ## Core Features & Use Cases - Pattern Selection Guidance: Chooses the right pattern type (Map, List, Record, Object, Relational, Logical) based on the data structure being matched. - Switch Construct Rules: Distinguishes when to use switch expressions for value production versus switch statements for side effects. - Exhaustiveness Verification: Provides a feedback loop using dart analyze to catch non-exhaustive matches over sealed classes and enums. - Use Case: When parsing a JSON payload like {'user': ['Lily', 13]}, apply a Map and List pattern to validate structure and bind name and age variables in a single if-case statement. ## Quick Start Refactor my Dart function that parses this JSON response to use pattern matching with a switch expression and verify exhaustiveness with dart analyze.