Behaviour specific to copies of the pipeline genre.
§1. Scanning metadata. Metadata for pipelines — or rather, the complete lack of same — is stored in the following structure.
typedef struct inform_pipeline { struct inbuild_copy *as_copy; struct semantic_version_number version; CLASS_DEFINITION } inform_pipeline;
- The structure inform_pipeline is accessed in 1/sm, 2/edt, 2/cps, 2/rqr, 2/nst, 2/jm, 3/bg, 3/ib, 3/is3, 4/em, 4/ebm, 5/es, 5/ks, 5/ls, 5/ps2, 5/ts, 6/st, 6/hdn, 6/inc, 6/vmg, 7/tm, 7/eip, 7/ti, 7/tc, 7/dc, 7/dr and here.
§2. This is called as soon as a new copy C of the language genre is created.
void Pipelines::scan(inbuild_copy *C) { inform_pipeline *P = CREATE(inform_pipeline); P->as_copy = C; P->version = VersionNumbers::null(); if (C == NULL) internal_error("no copy to scan"); Copies::set_metadata(C, STORE_POINTER_inform_pipeline(P)); }