private MethodSpec constructor() {
      MethodSpec.Builder constructor =
          MethodSpec.constructorBuilder()
              .addStatement(
                  "super($L)",
                  propertyMirrors.stream().map(PropertyMirror::getName).collect(joining(", ")));

      for (PropertyMirror propertyMirror : propertyMirrors) {
        constructor.addParameter(TypeName.get(propertyMirror.getType()), propertyMirror.getName());
      }

      return constructor.build();
    }
Creates a constructor that calls super with all the AutoValue fields.
value/src/main/java/com/google/auto/value/extension/serializable/processor/SerializableAutoValueExtension.java