# Class PgConverterFactory

Namespace
  Npgsql.Internal

Assembly
  Npgsql.dll

    [Experimental("NPG9001")]
    public static class PgConverterFactory

Inheritance
  object
  PgConverterFactory

Inherited Members
  object.Equals(object)
  object.Equals(object, object)
  object.GetHashCode()
  object.GetType()
  object.MemberwiseClone()
  object.ReferenceEquals(object, object)
  object.ToString()

## Methods

### CreateArrayMultirangeConverter<T>(PgConverter<T>, PgSerializerOptions)

    public static PgConverter<T[]> CreateArrayMultirangeConverter<T>(PgConverter<T> rangeConverter, PgSerializerOptions options) where T : notnull

#### Parameters

`rangeConverter` PgConverter<T>
`options` PgSerializerOptions

#### Returns

PgConverter<T[]>

#### Type Parameters

`T`

### CreateListMultirangeConverter<T>(PgConverter<T>, PgSerializerOptions)

    public static PgConverter<List<T>> CreateListMultirangeConverter<T>(PgConverter<T> rangeConverter, PgSerializerOptions options) where T : notnull

#### Parameters

`rangeConverter` PgConverter<T>
`options` PgSerializerOptions

#### Returns

PgConverter<List<T>>

#### Type Parameters

`T`

### CreatePolymorphicArrayConverter<TBase>(Func<PgConverter<TBase>>, Func<PgConverter<TBase>>, PgSerializerOptions)

    public static PgConverter<TBase> CreatePolymorphicArrayConverter<TBase>(Func<PgConverter<TBase>> arrayConverterFactory, Func<PgConverter<TBase>> nullableArrayConverterFactory, PgSerializerOptions options)

#### Parameters

`arrayConverterFactory` Func<PgConverter<TBase>>
`nullableArrayConverterFactory` Func<PgConverter<TBase>>
`options` PgSerializerOptions

#### Returns

PgConverter<TBase>

#### Type Parameters

`TBase`

### CreateRangeConverter<T>(PgConverter<T>, PgSerializerOptions)

    public static PgConverter<NpgsqlRange<T>> CreateRangeConverter<T>(PgConverter<T> subTypeConverter, PgSerializerOptions options)

#### Parameters

`subTypeConverter` PgConverter<T>
`options` PgSerializerOptions

#### Returns

PgConverter<NpgsqlRange<T>>

#### Type Parameters

`T`