Skip to content
docsv0.25.1

Library

The primitives this package brings, declared the same way any plugin declares its own. The framework's own catalogue entry has no privileged path: it implements {@see DeclaresComponents} like everyone else, so a catalogue that can see this can see a plugin's components too, and vice versa — one mechanism, not a special case plus an extension point. The list is asserted against the directory by {@see \Milpa\Live\Tests\Components\LibraryIsTheDirectoryTest}: a component added here and not declared, or declared and deleted, turns the suite red. Without that test this is a hand-kept copy of `ls src/Components`, which is the second source of truth this package refuses everywhere else.

Library::declaredComponents()

public function declaredComponents(): array

The primitives this package brings — the concrete component classes under `src/Components`. Abstract bases are absent on purpose: a catalogue cannot mount one, and a declaration is a promise that the class can be built.