Given the representative of an equivalence class of unification variables that already has a reference to a frozen version * of its bound type, return that reference. * * Precondition: NULL == var->parent; * isFrozen(var) */
| 411 | * isFrozen(var) |
| 412 | */ |
| 413 | static size_t getFrozenIx(unification_var* var) { |
| 414 | return var->isBound ? var->bound.frozen_ix : 0; |
| 415 | } |
| 416 | |
| 417 | /* Set '*result' to the index within 'type_dag' that contains an instance type bound by 'var' where free variables are instantiated |
| 418 | * at the ONE type, recursively adding new nodes to 'type_dag' as necessary. |