Lines Matching refs:subobj
5729 static void visit_check(const upb_refcounted *obj, const upb_refcounted *subobj, in visit_check() argument
5738 UPB_ASSERT(subobj); in visit_check()
5739 removed = upb_inttable_removeptr(ref2, subobj, &v); in visit_check()
5745 upb_inttable_insert2(ref2, (uintptr_t)subobj, upb_value_int32(newcount), in visit_check()
5842 const upb_refcounted *subobj,
5983 const upb_refcounted *subobj, in tarjan_visit() argument
5989 } else if (subobj->is_frozen || color(t, subobj) == WHITE) { in tarjan_visit()
5992 } else if (color(t, subobj) < GREEN) { in tarjan_visit()
5994 do_tarjan(subobj, t); in tarjan_visit()
5995 set_lowlink(t, obj, UPB_MIN(lowlink(t, obj), lowlink(t, subobj))); in tarjan_visit()
5996 } else if (color(t, subobj) == GREEN) { in tarjan_visit()
5998 set_lowlink(t, obj, UPB_MIN(lowlink(t, obj), idx(t, subobj))); in tarjan_visit()
6022 static void crossref(const upb_refcounted *r, const upb_refcounted *subobj, in crossref() argument
6026 if (color(t, subobj) > BLACK && r->group != subobj->group) { in crossref()
6029 refgroup(subobj->group); in crossref()
6214 const upb_refcounted *subobj, in release_ref2() argument
6217 untrack(subobj, obj, true); in release_ref2()
6218 if (!merged(obj, subobj)) { in release_ref2()
6219 UPB_ASSERT(subobj->is_frozen); in release_ref2()
6220 unref(subobj); in release_ref2()