Class ObjectCodec

java.lang.Object
dev.siroshun.codec4j.api.codec.object.ObjectCodec

public final class ObjectCodec extends Object
  • Method Details

    • create

      @Contract("_, _ -> new") @NotNull public static <T, F1> @NotNull Codec<T> create(@NotNull @NotNull Function<F1,T> constructor, @NotNull @NotNull FieldCodec<T,F1> field1)
    • create

      @Contract("_, _, _ -> new") @NotNull public static <T, F1, F2> @NotNull Codec<T> create(@NotNull @NotNull BiFunction<F1,F2,T> constructor, @NotNull @NotNull FieldCodec<T,F1> field1, @NotNull @NotNull FieldCodec<T,F2> field2)
    • create

      @Contract("_, _, _, _ -> new") @NotNull public static <T, F1, F2, F3> @NotNull Codec<T> create(@NotNull @NotNull dev.siroshun.jfun.function.Function3<F1,F2,F3,T> constructor, @NotNull @NotNull FieldCodec<T,F1> field1, @NotNull @NotNull FieldCodec<T,F2> field2, @NotNull @NotNull FieldCodec<T,F3> field3)
    • create

      @Contract("_, _, _, _, _ -> new") @NotNull public static <T, F1, F2, F3, F4> @NotNull Codec<T> create(@NotNull @NotNull dev.siroshun.jfun.function.Function4<F1,F2,F3,F4,T> constructor, @NotNull @NotNull FieldCodec<T,F1> field1, @NotNull @NotNull FieldCodec<T,F2> field2, @NotNull @NotNull FieldCodec<T,F3> field3, @NotNull @NotNull FieldCodec<T,F4> field4)
    • create

      @Contract("_, _, _, _, _, _ -> new") @NotNull public static <T, F1, F2, F3, F4, F5> @NotNull Codec<T> create(@NotNull @NotNull dev.siroshun.jfun.function.Function5<F1,F2,F3,F4,F5,T> constructor, @NotNull @NotNull FieldCodec<T,F1> field1, @NotNull @NotNull FieldCodec<T,F2> field2, @NotNull @NotNull FieldCodec<T,F3> field3, @NotNull @NotNull FieldCodec<T,F4> field4, @NotNull @NotNull FieldCodec<T,F5> field5)
    • create

      @Contract("_, _, _, _, _, _, _ -> new") @NotNull public static <T, F1, F2, F3, F4, F5, F6> @NotNull Codec<T> create(@NotNull @NotNull dev.siroshun.jfun.function.Function6<F1,F2,F3,F4,F5,F6,T> constructor, @NotNull @NotNull FieldCodec<T,F1> field1, @NotNull @NotNull FieldCodec<T,F2> field2, @NotNull @NotNull FieldCodec<T,F3> field3, @NotNull @NotNull FieldCodec<T,F4> field4, @NotNull @NotNull FieldCodec<T,F5> field5, @NotNull @NotNull FieldCodec<T,F6> field6)
    • create

      @Contract("_, _, _, _, _, _, _, _ -> new") @NotNull public static <T, F1, F2, F3, F4, F5, F6, F7> @NotNull Codec<T> create(@NotNull @NotNull dev.siroshun.jfun.function.Function7<F1,F2,F3,F4,F5,F6,F7,T> constructor, @NotNull @NotNull FieldCodec<T,F1> field1, @NotNull @NotNull FieldCodec<T,F2> field2, @NotNull @NotNull FieldCodec<T,F3> field3, @NotNull @NotNull FieldCodec<T,F4> field4, @NotNull @NotNull FieldCodec<T,F5> field5, @NotNull @NotNull FieldCodec<T,F6> field6, @NotNull @NotNull FieldCodec<T,F7> field7)
    • create

      @Contract("_, _, _, _, _, _, _, _, _ -> new") @NotNull public static <T, F1, F2, F3, F4, F5, F6, F7, F8> @NotNull Codec<T> create(@NotNull @NotNull dev.siroshun.jfun.function.Function8<F1,F2,F3,F4,F5,F6,F7,F8,T> constructor, @NotNull @NotNull FieldCodec<T,F1> field1, @NotNull @NotNull FieldCodec<T,F2> field2, @NotNull @NotNull FieldCodec<T,F3> field3, @NotNull @NotNull FieldCodec<T,F4> field4, @NotNull @NotNull FieldCodec<T,F5> field5, @NotNull @NotNull FieldCodec<T,F6> field6, @NotNull @NotNull FieldCodec<T,F7> field7, @NotNull @NotNull FieldCodec<T,F8> field8)
    • create

      @Contract("_, _, _, _, _, _, _, _, _, _ -> new") @NotNull public static <T, F1, F2, F3, F4, F5, F6, F7, F8, F9> @NotNull Codec<T> create(@NotNull @NotNull dev.siroshun.jfun.function.Function9<F1,F2,F3,F4,F5,F6,F7,F8,F9,T> constructor, @NotNull @NotNull FieldCodec<T,F1> field1, @NotNull @NotNull FieldCodec<T,F2> field2, @NotNull @NotNull FieldCodec<T,F3> field3, @NotNull @NotNull FieldCodec<T,F4> field4, @NotNull @NotNull FieldCodec<T,F5> field5, @NotNull @NotNull FieldCodec<T,F6> field6, @NotNull @NotNull FieldCodec<T,F7> field7, @NotNull @NotNull FieldCodec<T,F8> field8, @NotNull @NotNull FieldCodec<T,F9> field9)
    • create

      @Contract("_, _, _, _, _, _, _, _, _, _, _ -> new") @NotNull public static <T, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> @NotNull Codec<T> create(@NotNull @NotNull dev.siroshun.jfun.function.Function10<F1,F2,F3,F4,F5,F6,F7,F8,F9,F10,T> constructor, @NotNull @NotNull FieldCodec<T,F1> field1, @NotNull @NotNull FieldCodec<T,F2> field2, @NotNull @NotNull FieldCodec<T,F3> field3, @NotNull @NotNull FieldCodec<T,F4> field4, @NotNull @NotNull FieldCodec<T,F5> field5, @NotNull @NotNull FieldCodec<T,F6> field6, @NotNull @NotNull FieldCodec<T,F7> field7, @NotNull @NotNull FieldCodec<T,F8> field8, @NotNull @NotNull FieldCodec<T,F9> field9, @NotNull @NotNull FieldCodec<T,F10> field10)