code: public static <T1, T2> TypeFactory<Tuple2<T1, T2>> typeFactory( TypeFactory<T1> type1,
                                                                      TypeFactory<T2> type2 ) {
          return new Tuple2TypeFactory<>(type1, type2);
      }
docs: Create a type factory for tuples of size 2.
  
  @param type1 the first type; may not be null
  @param type2 the second type; may not be null
  @return the type factory; never null