$darkmode
Elektra 0.11.0
Private API

Problem

Only libelektra-core is supposed to access private data, but this contradicts the goal to keep the library minimal. kdbprivate.h was too generic, it contained many other parts next to the struct definitions of Key/KeySet. Theoretically everything in kdbprivate.h is supposed to be private, but lots of code still uses it when it shouldn't. kdb.h is also the only header that is definitely public. All other headers are anybody's guess.

Constraints

Assumptions

Considered Alternatives

Decision

Rationale

Implications

Related Decisions

Notes