Back to list
mgreenly

patternsopaque-pointer

by mgreenly

An AI Coding Agent

1🍴 0📅 Jan 24, 2026

SKILL.md


name: patterns/opaque-pointer description: Opaque Pointer Pattern pattern for C development

Opaque Pointer Pattern

Declare struct in header without defining fields. Implementation hidden in .c file. Callers only see pointer, never fields.

ikigai Application

Header:

typedef struct ik_scrollback ik_scrollback_t;  // Forward declaration
res_t ik_scrollback_create(void *ctx, ik_scrollback_t **out);

Implementation in .c:

struct ik_scrollback {
    // Fields hidden from callers
};

Benefits:

  • Callers can't depend on internal fields
  • Change internals without recompiling callers
  • Enforces use of accessor functions

ikigai usage: Most context types could use this. Currently structs are defined in headers. Consider for stable public APIs.

Score

Total Score

60/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon