Skip to content

Reading a manifest

Generated from engine/assets/asset_manifest_loader.h at 862e08b. The text under each declaration is the header's own comment, word for word. About the reference says how these pages are made.

Browse the assets module

#include "engine/assets/asset_manifest_loader.h" · namespace labrador

AssetManifest read_asset_manifest(const char* json_path);

Reads the manifest at json_path.

The file groups assets by kind and directory, because that is how a person reads them:

{
"assets": [
{
"kind": "font",
"directory": "./fonts/",
"names": [ "courier_new_bold_16" ]
}
]
}

and the groups are flattened to one entry per asset, because that is how a loader walks them. Order survives the flattening: assets load in the order the file lists them.

Throws std::runtime_error naming the path if the file cannot be read or parsed, and naming the path and the offending group if the document is the wrong shape. A manifest is hand-edited data, so every read here is checked rather than assumed (T6).

Named in the public declarations above: AssetManifest.

The files that include this header directly. A file can also reach it through another header.

Development documentation (unreleased). Built from Labrador 862e08b of 2026-10-08.