public static UTypeApply create(UExpression type, List<UExpression> typeArguments) {
    return new AutoValue_UTypeApply(type, ImmutableList.copyOf(typeArguments));
  }
@Test
  public void equality() {
    new EqualsTester()
        .addEqualityGroup(
            UTypeApply.create(
                UClassIdent.create("java.util.List"), UClassIdent.create("java.lang.String")))
        .addEqualityGroup(
            UTypeApply.create(
                UClassIdent.create("java.util.Set"), UClassIdent.create("java.lang.String")))
        .addEqualityGroup(
            UTypeApply.create(
                UClassIdent.create("java.util.List"), UClassIdent.create("java.lang.Integer")))
        .testEquals();
  }