aspa_set
struct aspa_set *aspa;
-1, aspa, offsetof(struct aspa_set, tas)) == -1)
RB_ENTRY(aspa_set) entry;
void free_aspa(struct aspa_set *);
RB_PROTOTYPE(aspa_tree, aspa_set, entry, aspa_cmp);
const char *log_aspa(struct aspa_set *);
struct aspa_set;
RB_HEAD(aspa_tree, aspa_set);
free_aspa(struct aspa_set *aspa)
struct aspa_set *aspa, *naspa;
aspa_cmp(struct aspa_set *a, struct aspa_set *b)
RB_GENERATE(aspa_tree, aspa_set, entry, aspa_cmp);
| grammar aspa_set '\n'
struct aspa_set *aspa, needle = { .as = as };
aspa_set : ASPASET '{' optnl aspa_set_l optnl '}'
struct aspa_set *aspa;
static struct aspa_set *aspa;
offsetof(struct aspa_set, tas)) == -1)
struct aspa_set *aspa, *na;
aspa_set_entry(struct aspa_set *aspa, uint32_t asnum)
rtr_aspa_insert(struct aspa_tree *at, struct aspa_set *mergeset)
struct aspa_set *aspa, needle = { .as = mergeset->as };
static struct aspa_set *aspa;
offsetof(struct aspa_set, tas)) == -1)
rtr_aspa_set_size(struct aspa_set *aspa)
struct aspa_set *aspa;
struct aspa_set as = { .as = aspa->as, .num = aspa->num };
&as, offsetof(struct aspa_set, tas));
struct aspa_set *aspa;
struct aspa_set *aspa, *a;
struct aspa_set needle = { 0 };
void rtr_aspa_insert(struct aspa_tree *, struct aspa_set *);
log_aspa(struct aspa_set *aspa)