2020-02-17 11:43:20 +02:00
|
|
|
[Genres::] Genres.
|
|
|
|
|
|
|
|
The different sorts of work managed by inbuild.
|
|
|
|
|
|
|
|
@h Genres.
|
|
|
|
For example, "kit" and "extension" will both be both genres. There will be
|
|
|
|
few of these.
|
|
|
|
|
|
|
|
=
|
|
|
|
typedef struct inbuild_genre {
|
|
|
|
text_stream *genre_name;
|
|
|
|
METHOD_CALLS
|
|
|
|
MEMORY_MANAGEMENT
|
|
|
|
} inbuild_genre;
|
|
|
|
|
|
|
|
inbuild_genre *Genres::new(text_stream *name) {
|
|
|
|
inbuild_genre *gen;
|
|
|
|
LOOP_OVER(gen, inbuild_genre)
|
|
|
|
if (Str::eq(gen->genre_name, name))
|
|
|
|
return gen;
|
|
|
|
gen = CREATE(inbuild_genre);
|
|
|
|
gen->genre_name = Str::duplicate(name);
|
|
|
|
ENABLE_METHOD_CALLS(gen);
|
|
|
|
return gen;
|
|
|
|
}
|
|
|
|
|
|
|
|
text_stream *Genres::name(inbuild_genre *G) {
|
|
|
|
if (G == NULL) return I"(none)";
|
|
|
|
return G->genre_name;
|
|
|
|
}
|
|
|
|
|
|
|
|
@
|
|
|
|
|
|
|
|
@e GENRE_WRITE_WORK_MTID
|
|
|
|
@e GENRE_CLAIM_AS_COPY_MTID
|
2020-02-18 21:57:31 +02:00
|
|
|
@e GENRE_SCAN_COPY_MTID
|
2020-02-17 11:43:20 +02:00
|
|
|
@e GENRE_SEARCH_NEST_FOR_MTID
|
|
|
|
@e GENRE_COPY_TO_NEST_MTID
|
|
|
|
@e GENRE_GO_OPERATIONAL_MTID
|
|
|
|
@e GENRE_READ_SOURCE_TEXT_FOR_MTID
|
2020-02-22 16:09:13 +02:00
|
|
|
@e GENRE_BUILD_COPY_MTID
|
2020-02-17 11:43:20 +02:00
|
|
|
|
|
|
|
=
|
|
|
|
VMETHOD_TYPE(GENRE_WRITE_WORK_MTID,
|
|
|
|
inbuild_genre *gen, text_stream *OUT, inbuild_work *work)
|
|
|
|
VMETHOD_TYPE(GENRE_CLAIM_AS_COPY_MTID,
|
|
|
|
inbuild_genre *gen, inbuild_copy **C, text_stream *arg, text_stream *ext,
|
|
|
|
int directory_status)
|
2020-02-18 21:57:31 +02:00
|
|
|
VMETHOD_TYPE(GENRE_SCAN_COPY_MTID,
|
|
|
|
inbuild_genre *gen, inbuild_copy *C)
|
2020-02-17 11:43:20 +02:00
|
|
|
VMETHOD_TYPE(GENRE_SEARCH_NEST_FOR_MTID,
|
|
|
|
inbuild_genre *gen, inbuild_nest *N, inbuild_requirement *req,
|
|
|
|
linked_list *search_results)
|
|
|
|
VMETHOD_TYPE(GENRE_COPY_TO_NEST_MTID,
|
|
|
|
inbuild_genre *gen, inbuild_copy *C, inbuild_nest *N, int syncing,
|
|
|
|
build_methodology *meth)
|
|
|
|
VMETHOD_TYPE(GENRE_GO_OPERATIONAL_MTID,
|
|
|
|
inbuild_genre *gen, inbuild_copy *C)
|
|
|
|
VMETHOD_TYPE(GENRE_READ_SOURCE_TEXT_FOR_MTID,
|
|
|
|
inbuild_genre *gen, inbuild_copy *C)
|
2020-02-22 16:09:13 +02:00
|
|
|
VMETHOD_TYPE(GENRE_BUILD_COPY_MTID,
|
|
|
|
inbuild_genre *gen, text_stream *OUT, inbuild_copy *C,
|
|
|
|
build_methodology *BM, int rebuild, int describe_only)
|