1
0
Fork 0
mirror of https://github.com/ganelson/inform.git synced 2024-07-01 06:24:58 +03:00
inform7/inbuild/supervisor-module/Chapter 5/Pipeline Services.w

26 lines
694 B
OpenEdge ABL
Raw Normal View History

2020-02-10 02:10:58 +02:00
[Pipelines::] Pipeline Services.
2020-03-31 02:17:21 +03:00
Behaviour specific to copies of the pipeline genre.
2020-02-10 02:10:58 +02:00
2020-05-05 01:34:55 +03:00
@h Scanning metadata.
Metadata for pipelines -- or rather, the complete lack of same -- is stored
in the following structure.
=
2020-02-10 02:10:58 +02:00
typedef struct inform_pipeline {
struct inbuild_copy *as_copy;
2020-02-19 22:48:30 +02:00
struct semantic_version_number version;
2020-05-09 15:07:39 +03:00
CLASS_DEFINITION
2020-02-10 02:10:58 +02:00
} inform_pipeline;
2020-05-05 01:34:55 +03:00
@ 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));
2020-02-10 02:10:58 +02:00
}