Module Make.Fields

module Input : sig ... end
module Accumulator : sig ... end
val add_field : t_fields_annots:( string -> (Core_kernel.String.t * string option) list ) -> ( 'orig, < contramap : ( 'f -> 'orig ) Core_kernel.ref ; graphql_fields : 'orig Input.T.t Core_kernel.ref ; nullable_graphql_fields : 'nullable Input.T.t Core_kernel.ref ; skip : bool Core_kernel.ref.. >, 'f, 'nullable ) Input.t -> ( [< `Read | `Set_and_create ], 'c', 'f0 ) Fieldslib.Field.t_with_perm -> ( 'input_type, < contramap : ( 'c'0 -> 'input_type ) Core_kernel.ref ; graphql_fields : 'input_type Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'c'0 Accumulator.T.t list Core_kernel.ref ; nullable_graphql_fields : 'nullable' Input.T.t Core_kernel.ref.. > as 'a, 'c'0, 'nullable' ) Accumulator.t -> ( 'b -> 'f1 ) * ( 'input_type, 'a, 'c'0, 'nullable' ) Accumulator.t
val finish : string -> t_toplevel_annots:( unit -> (Core_kernel.String.t * string option) list ) -> ('u * ( 'a, < contramap : ( 'c -> 'a ) Core_kernel.ref ; graphql_fields : 'a Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'c Accumulator.T.t list Core_kernel.ref ; nullable_graphql_fields : 'd option Input.T.t Core_kernel.ref.. > as 'b, 'c, 'd option ) Accumulator.t) -> ( 'e, 'f, 'g, 'd option ) Input.t
val skip : < contramap : ( 'b -> 'b ) Core_kernel.ref ; graphql_fields : 'c Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'd Core_kernel.ref ; nullable_graphql_fields : 'e Input.T.t Core_kernel.ref.. > as 'a -> 'f
val int : < contramap : ( 'b -> 'b ) Core_kernel.ref ; graphql_fields : int Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'c Core_kernel.ref ; nullable_graphql_fields : int option Input.T.t Core_kernel.ref.. > as 'a -> 'd
val string : < contramap : ( 'b -> 'b ) Core_kernel.ref ; graphql_fields : string Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'c Core_kernel.ref ; nullable_graphql_fields : string option Input.T.t Core_kernel.ref.. > as 'a -> 'd
val bool : < contramap : ( 'b -> 'b ) Core_kernel.ref ; graphql_fields : bool Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'c Core_kernel.ref ; nullable_graphql_fields : bool option Input.T.t Core_kernel.ref.. > as 'a -> 'd
val list : < contramap : ( 'a -> 'input_type ) Core_kernel.ref ; graphql_fields : 'input_type0 Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'b Core_kernel.ref.. > -> ( 'input_type1 list, ( 'input_type1 list, < contramap : ( 'a list -> 'input_type1 list ) Core_kernel.ref ; graphql_fields : 'input_type1 list Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'd Core_kernel.ref ; nullable_graphql_fields : 'input_type2 list option Input.T.t Core_kernel.ref.. > as 'c, 'a list, 'input_type2 list option ) Input.t, 'a list, 'input_type2 list option ) Input.t -> ( 'input_type1 list, 'e, 'a list, 'input_type2 list option ) Input.t
val option : ( 'input_type, < contramap : ( 'c -> 'input_type0 ) Core_kernel.ref ; graphql_fields : 'input_type1 Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'a Core_kernel.ref ; nullable_graphql_fields : 'input_type2 option Input.T.t Core_kernel.ref.. >, 'c0, 'input_type2 option ) Input.t -> ( 'input_type2 option, ( 'input_type2 option, < contramap : ( 'c1 option -> 'input_type2 option ) Core_kernel.ref ; graphql_fields : 'input_type2 option Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'd Core_kernel.ref ; nullable_graphql_fields : 'input_type2 option Input.T.t Core_kernel.ref.. > as 'b, 'c1 option, 'input_type2 option ) Input.t, 'c1 option, 'input_type2 option ) Input.t -> ( 'input_type2 option, 'e, 'c1 option, 'input_type2 option ) Input.t
val contramap : f:( 'd -> 'c ) -> ( 'input_type, < contramap : ( 'c0 -> 'input_type0 ) Core_kernel.ref ; graphql_fields : 'input_type1 Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'a Core_kernel.ref ; nullable_graphql_fields : 'nullable Input.T.t Core_kernel.ref.. >, 'c1, 'nullable0 ) Input.t -> ( 'input_type2, ( 'input_type2, < contramap : ( 'd0 -> 'input_type1 ) Core_kernel.ref ; graphql_fields : 'input_type1 Input.T.t Core_kernel.ref ; graphql_fields_accumulator : 'e Core_kernel.ref ; nullable_graphql_fields : 'nullable Input.T.t Core_kernel.ref.. > as 'b, 'd1, 'nullable1 ) Input.t, 'd1, 'nullable1 ) Input.t -> ( 'input_type2, 'f, 'd1, 'nullable1 ) Input.t