Harvest
module Harvest| Assembly | Xantham.Generator |
Tier 1 - Harvest: the Wire-driven inventory of what the author exported. No mapping decisions live here; every entry-module export and exported type member of a harvested namespace appears once per public origin and name, aliases followed to their origin.
Functions and values
harvestAmbientClasses: Pass<HarvestModel>
harvestAmbientClasses: Pass<HarvestModel>Runtime ambient class exports available to declarations reached through dependencies.
harvestDocs: Pass<HarvestModel>
harvestDocs: Pass<HarvestModel>Documentation for every harvested export, from the checker rather than the syntax tree so merged declarations already read as one.
harvestExports: Pass<HarvestModel>
harvestExports: Pass<HarvestModel>Every public path's exports, root first then each subpath in PublicPaths order, each followed through getAliasedSymbol to its origin so that re-exports and default-export aliases land on the declaring symbol. The root binds [<Import(name, package)>]; a subpath binds under its own specifier, "<runtime>/<key without the leading ./>".
A skipped exports key - a wildcard, or a key without declarations - raises the finding recorded for it in Context.SkippedPaths, degrading the model and leaving the run intact.
harvestGlobals: Pass<HarvestModel>
harvestGlobals: Pass<HarvestModel>Harvests package globals when a public input is a global script, module exports are empty, or compiler libraries ship alongside the entry package. A mixed run reads the global script's scope and retains the public module exports.
harvestNamespaceMembers: Pass<HarvestModel>
harvestNamespaceMembers: Pass<HarvestModel>The exported interfaces, aliases, classes and enums of every harvested namespace, nested namespaces included, each harvested under its namespace's origin. A member carries no value export of its own: its value binds through the namespace object. Every walked namespace joins Namespaces, a nested one under its dotted path (Pool.Inner). A module package's global namespaces (declare global { namespace X }) are harvested as global exports first. Only namespaces and members whose group ships are walked.
orderExports: Pass<HarvestModel>
orderExports: Pass<HarvestModel>Entry declarations first, then package-relative dependency and compiler sources. Node index and export name break ties; exports without declarations sort last. Occurrences of one declaration then order by public path: the declaring namespace's own path before an alias path such as globalThis.Intl, then by ordinal path. Occurrences that still tie keep harvest-pass order, entry module first. The order will be identical across runs whatever order the checker enumerates scopes in.
passes: Pass<HarvestModel> list
passes: Pass<HarvestModel> listThe tier's pass list, in execution order.