cru_prop_pair - a pair of vertex property specifications
#include <cru/cru.h>
typedef struct
cru_prop_pair_s
{
struct
cru_prop_s
local;
struct
cru_prop_s
adjacent;
} *cru_prop_pair;
Applications can initialize two cru_prop structures as fields in this structure to be used jointly for evaluating vertex properties in the course of composition operations performed by the cru_composed library function. Each vertex can have two properties, one given by each field, and each property is allowed to depend on the vertex, its edges, and its adjacent vertices in either direction according to the usual calling conventions for cru_prop structures.
When a pair of end-to-end edges is under consideration for the creation of a new edge representing their composition, the local vertex property of the originating vertex and the adjacent property of the intermediate vertex inform the result.
Either or both of these fields can be omitted or filled with zeros. If so, the corresponding property defaults to a verbatim copy of the vertex.
The cru_prop_pair structure is a field in the cru_composer top level structure. The property values are passed as parameters to the quartenary operator and predicate in the labeler field of the same structure.
/usr/local/include/cru/data_types.h
cru, cru_bop, cru_bpred, cru_builder, cru_built, cru_cbop, cru_classifier, cru_class_of, cru_class_size, cru_composed, cru_composer, cru_connect, cru_connector, cru_cqop, cru_crossed, cru_crosser, cru_ctop, cru_ctop_pair, cru_ctop_quad, cru_data_types, cru_deduplicated, cru_destructor, cru_destructor_pair, cru_edge_count, cru_fabricated, cru_fabricator, cru_filter, cru_filtered, cru_fold, cru_free_kill_switch, cru_free_later, cru_free_now, cru_free_partition, cru_function_types, cru_get, cru_hash, cru_induced, cru_inducer, cru_kernel, cru_kill, cru_killed, cru_mapreduced, cru_mapreducer, cru_merged, cru_merger, cru_mutated, cru_mutator, cru_new_kill_switch, cru_nop, cru_order, cru_order_pair, cru_partition_of, cru_plan, cru_postponed, cru_postponer, cru_prop, cru_pruner, cru_qop, cru_qpred, cru_set, cru_sig, cru_singleton, cru_split, cru_splitter, cru_spread, cru_strerror, cru_stretch, cru_stretched, cru_stretcher, cru_subconnector, cru_terminus_count, cru_top, cru_tpred, cru_united, cru_uop, cru_vertex_count, cru_zone
Dennis Furey (milonga@delayinsensitive.com)
https://github.com/gueststar/cru