Agent skill

patterns/result-type

Result Type Pattern (C-Specific) pattern for C development

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/patternsresult-type

SKILL.md

Result Type Pattern (C-Specific)

Return struct containing success/failure status plus value or error. Explicit error handling without exceptions. Caller must check result.

ikigai Application

Core type: res_t used throughout:

c
res_t result = ik_cfg_load(ctx, path, &cfg);
if (!result.ok) {
    // Handle error, result.error contains message
}

Macros:

  • OK(value) - Construct success result
  • ERR(msg) - Construct error result
  • TRY(expr) - Propagate error if failed
  • CHECK(cond, msg) - Return error if condition false

Benefits:

  • Errors can't be ignored (must check .ok)
  • Error context propagates up call stack
  • No hidden control flow (unlike exceptions)

See: project/error_handling.md for patterns.

Didn't find tool you were looking for?

Be as detailed as possible for better results