Lines Matching refs:ids
23 struct ids {
28 struct hashmap *ids;
37 } ids;
52 %type <ids> expr if_expr
53 %destructor { ids__free($$.ids); } <ids>
77 static struct ids union_expr(struct ids ids1, struct ids ids2)
79 struct ids result = {
81 .ids = ids__union(ids1.ids, ids2.ids),
86 static struct ids handle_id(struct expr_parse_ctx *ctx, char *id,
89 struct ids result;
104 result.ids = NULL;
112 result.ids = ids__new();
113 if (!result.ids || ids__insert(result.ids, id)) {
128 assert(LHS.ids == NULL); \
129 assert(RHS.ids == NULL); \
131 RESULT.ids = NULL; \
138 assert(LHS.ids == NULL); \
139 assert(RHS.ids == NULL); \
141 RESULT.ids = NULL; \
152 ctx->ids = ids__union($1.ids, ctx->ids);
167 $$.ids = $5.ids;
168 ids__free($1.ids);
169 ids__free($3.ids);
177 $$.ids = $1.ids;
178 ids__free($3.ids);
179 ids__free($5.ids);
186 $$.ids = NULL;
187 ids__free($1.ids);
188 ids__free($3.ids);
189 ids__free($5.ids);
204 $$.ids = NULL;
222 assert($1.ids == NULL);
223 assert($3.ids == NULL);
225 $$.ids = NULL;
237 assert($1.ids == NULL);
238 assert($3.ids == NULL);
240 $$.ids = NULL;
253 assert($5.ids == NULL);
255 $$.ids = NULL;
256 ids__free($3.ids);
258 assert($3.ids == NULL);
259 assert($5.ids == NULL);
261 $$.ids = NULL;
270 $$.ids = $2.ids;
280 $$.ids = NULL;
289 $$.ids = NULL;
297 $$.ids = NULL;