anchor.diff:                      ) |> Some
               else None
   
  +/// Handles T[] arrays, where T is supported by `rootHandler`.
   type ArrayTypeContext(rootHandler : ITypeHandler) =
       let translateArray clrElementType value =
           match value with
  
positive.code:                     | _ -> failwith "Invalid object fields for constructor"
                  ) |> Some
  
  type RootTypeHandler(customContext : ITypeHandler -> ITypeHandler) as this =
      let mutable context : ITypeHandler = Unchecked.defaultof<ITypeHandler>
      do
  
negative.code:                     , translateCollection emptyCons icollection clrElementType
                      ) |> Some
  
  /// Handles types implementing IEnumerable<T> that have a constructor taking an IEnumerable<T>,
  /// where T is supported by `rootHandler`.
  type EnumerableTypeContext(rootHandler : ITypeHandler) =
      let translateEnumerable
          (cons : ConstructorInfo) // constructor taking IEnumerable<clrElementType>
  