anchor.diff:      member this.ToArray () : char[] =
           this.String.ToCharArray (this.Offset, this.Length)
   
  +/// Represents a segment of a string.
  +type substring = Substring
  +
   //
   [<RequireQualifiedAccess; CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>]
   module Substring =
       open OptimizedClosures
   
       //
  +    [<CompiledName("String")>]
  +    let inline string (substring : substring) : string =
  +        substring.String
  +
  +    //
  +    [<CompiledName("Offset")>]
  +    let inline offset (substring : substring) : int =
  +        substring.Offset
  +
  +    //
  +    [<CompiledName("Length")>]
  +    let inline length (substring : substring) : int =
  +        substring.Length
  +
  +    //
  +    [<CompiledName("Get")>]
  +    let inline get (substring : substring) index =
  +        substring.[index]
  +
  +    //
       [<CompiledName("IsEmpty")>]
  -    let inline isEmpty (substring : Substring) : bool =
  +    let inline isEmpty (substring : substring) : bool =
           substring.IsEmpty
   
       //
       [<CompiledName("ToString")>]
  -    let inline toString (substring : Substring) : string =
  +    let inline toString (substring : substring) : string =
           substring.ToString ()
   
       //
       [<CompiledName("ToArray")>]
  -    let inline toArray (substring : Substring) : char[] =
  +    let inline toArray (substring : substring) : char[] =
           substring.ToArray ()
   
       //
       [<CompiledName("Iter")>]
  -    let iter action (substring : Substring) : unit =
  +    let iter action (substring : substring) : unit =
           let len = substring.Length
           for i = 0 to len - 1 do
               action substring.[i]
   
       //
       [<CompiledName("IterIndexed")>]
  -    let iteri action (substring : Substring) : unit =
  +    let iteri action (substring : substring) : unit =
           // OPTIMIZATION : Immediately return if the substring is empty.
           let len = substring.Length
           if len > 0 then
  
positive.code: 
      //
      [<CompiledName("FoldIndexed")>]
      let foldi (folder : 'State -> int -> char -> 'State) state (substring : Substring) : 'State =
          // OPTIMIZATION : Immediately return if the substring is empty.
          let len = substring.Length
          if len = 0 then state
  
negative.code:             notImpl "String.Split.iteri"
  
          //
          [<CompiledName("Fold")>]
          let fold (separator : char[]) (folder : 'State -> substring -> 'State) (state : 'State) (str : string) : 'State =
              // Preconditions
              checkNonNull "separator" separator
              checkNonNull "str" str
  