spudplate
Template scaffolding compiler for spudlang .spud files
Loading...
Searching...
No Matches
spudplate::BundleResult Struct Reference

The set of assets and dependencies a parsed program references. More...

#include <bundler.h>

Public Attributes

std::vector< SpudpackAssetassets
 Deduped, normalised assets ready to embed in a spudpack.
 
std::vector< SpudpackDepdeps
 Deduped, name-keyed dependencies ready to embed in a spudpack.
 

Detailed Description

The set of assets and dependencies a parsed program references.

Asset paths are normalised (forward-slash separators, no leading /, no . or .. segments, no embedded NUL) and deduped by path - entries with the same normalised path are collapsed iff their bytes and mode match. A trailing / on a path means "empty leaf directory" and the data field is empty.

Deps are the bytes of every installed .spp referenced by an include statement, deduped by name. Deps appear in source-order of their first include site so error messages for cross-dep clashes name the earliest point where a name became live.