inlineMixinTParams(type);
map.insertType(type.symbol().typeParams(), type.typeArgs());
    public void inlineMixin(int i, Type type, Symbol iface, Template impl) {        assert 0 < i && i < state : "state = " + state + ", i = " + i;        switch (parents[i]) {        case TypeRef(Type prefix, Symbol mixin, Type[] args):            map.insertSymbol(mixin, clasz);            cloner.owners.put(mixin.primaryConstructor(), clasz);            inlineMixinTParams(type);            Tree.Apply constr = (Tree.Apply)template.parents[i];            Symbol[] vparams = mixin.valueParams();            inlineMixinVParams(vparams, constr.args, 0);            handleMixinInterfaceMembers(mixin);            inlineMixinMembers(mixin.nextInfo().members(), impl, vparams.length);            parents[i] = Type.TypeRef(prefix, iface, args);            template.parents[i] = gen.mkPrimaryConstr(constr.pos, parents[i]);            state = i;            return;        default:            throw Debug.abort("invalid base class type", parents[i]);        }    }