Generic format: each non-empty field's value becomes one path segment. Field order is taken from the order of the input (or, for positional calls, from scenarioFields()). Integer-and-contiguous vectors are encoded as start-end. Empty / NA fields are dropped entirely (yielding one fewer segment); for round-tripping see pathParse().

pathBuild(..., pre = "outputs", withFieldLabel = .scenario_env$withFieldLabel)

Arguments

...

Either a single named-list / scenario, or named/positional field/value pairs.

pre

Path prefix (default "outputs").

withFieldLabel

Character vector of field names whose segment should carry a paste0(label, value) prefix. Defaults to the registered value (see register_scenario_format()).

Value

Character scalar.

Details

Fields whose name appears in withFieldLabel get their segment prefixed by the field name itself (e.g. .rep with value 5 renders as .rep5 instead of bare 5). Useful when path readers must distinguish two integer fields, or when round-tripping with mid-list NAs (the label disambiguates which segments are present).

Accepts three calling styles, all equivalent:

  • pathBuild(scenarioObj) — a single named-list / scenario;

  • pathBuild(.fieldA = vA, .fieldB = vB, ...) — explicit named args;

  • pathBuild(vA, vB, ...) — positional, in cached-field order.