module Novika::Resolver::Manifest
Overview
Includers are manifests in RunnableGroup
s.
Manifests exist mainly to allow to specify alternative load order. They are designed to be hidden so as to not interfere with/clutter the user's file tree.
Direct including types
Defined in:
novika/resolver.crConstructors
-
.find(disk : Disk, path : Path, ancestor = nil) : Manifest
Creates and returns a manifest object if path contains a manifest.
Instance Method Summary
-
#layout(container : RunnableContainer, group : RunnableGroup)
Populates container with runnables from group according to this manifest's default layout.
-
#populate(root : RunnableRoot, container : RunnableContainer, origin : RunnableGroup)
Populates container with runnables from origin according to the content of the manifest.
Constructor Detail
Creates and returns a manifest object if path contains a manifest. Otherwise, returns nil.
Instance Method Detail
Populates container with runnables from group according to this manifest's default layout.
- For application manifests, it's
* ** entry.nk
. - For library manifests and directories with no manifest, it's
entry.nk * **
.
Populates container with runnables from origin according to the content of the manifest.
-
If there is no explicit
*
or**
,**
is automatically inserted at the very beginning of the manifest regardless of whether it is an application manifest or a library manifest. -
A directory with no manifest is laid out directly using
#layout
, since there is no "manifest content" to speak of.