code: public List<Type> save() {
          ListBuffer<Type> buf = new ListBuffer<>();
          for (Type t : undetvars) {
              buf.add(((UndetVar)t).dup(infer.types));
          }
          return buf.toList();
      }
docs: Save the state of this inference context