Currently we call is_stable_typed inside register_internal, both of which to DFS traversals of the data. This results in quadratic traversal of the value trees when registering.
Instead, the result of is_stable_typed could be returned alongside the TCBoxedVal from register_internal, making this traversal linear again.
Description
Currently we call
is_stable_typed
insideregister_internal
, both of which to DFS traversals of the data. This results in quadratic traversal of the value trees when registering.Instead, the result of
is_stable_typed
could be returned alongside theTCBoxedVal
fromregister_internal
, making this traversal linear again.Spec