anchor.diff:      fun (_ : HttpFunc) (ctx : HttpContext) ->
           ctx.WriteStreamAsync enableRangeProcessing stream eTag lastModified
   
  -/// **Description**
  -///
  +/// <summary>
   /// Streams a file to the client.
   ///
  -/// The handler will respect any valid HTTP pre-conditions (e.g. `If-Match`, `If-Modified-Since`, etc.) and return the most appropriate response. If the optional parameters `eTag` and/or `lastModified` have been set, then it will also set the `ETag` and/or `Last-Modified` HTTP headers in the response.
  -///
  -/// **Parameters**
  -///
  -/// `enableRangeProcessing`: If enabled then the handler will respect the `Range` and `If-Range` HTTP headers of the request as well as set all necessary HTTP headers in the response to enable HTTP range processing.
  -/// `filePath`: The absolute or relative path (to `ContentRoot`) of the file.
  -/// `eTag`: An optional entity tag which identifies the exact version of the file.
  -/// `lastModified`: An optional parameter denoting the last modified date time of the file.
  -///
  -/// **Output**
  -///
  -/// A Giraffe `HttpHandler` function which can be composed into a bigger web application.
  -///
  +/// The handler will respect any valid HTTP pre-conditions (e.g. If-Match, If-Modified-Since, etc.) and return the most appropriate response. If the optional parameters eTag and/or lastModified have been set, then it will also set the ETag and/or Last-Modified HTTP headers in the response.
  +/// </summary>
  +/// <param name="enableRangeProcessing">If enabled then the handler will respect the Range and If-Range HTTP headers of the request as well as set all necessary HTTP headers in the response to enable HTTP range processing.</param>
  +/// <param name="filePath">The absolute or relative path (to ContentRoot) of the file.</param>
  +/// <param name="eTag">An optional entity tag which identifies the exact version of the file.</param>
  +/// <param name="lastModified">An optional parameter denoting the last modified date time of the file.</param>
  +/// <param name="ctx"></param>
  +/// <returns>A Giraffe <see cref="HttpHandler"/> function which can be composed into a bigger web application.</returns>
   let streamFile (enableRangeProcessing : bool)
                  (filePath              : string)
                  (eTag                  : EntityTagHeaderValue option)
  
positive.code:                 return Some this
          }
  
      /// **Description**
      ///
      /// Streams data to the client.
      ///
      /// The handler will respect any valid HTTP pre-conditions (e.g. `If-Match`, `If-Modified-Since`, etc.) and return the most appropriate response. If the optional parameters `eTag` and/or `lastModified` have been set, then it will also set the `ETag` and/or `Last-Modified` HTTP headers in the response.
      ///
      /// **Parameters**
      ///
      /// `enableRangeProcessing`: If enabled then the handler will respect the `Range` and `If-Range` HTTP headers of the request as well as set all necessary HTTP headers in the response to enable HTTP range processing.
      /// `stream`: The stream to be send to the client.
      /// `eTag`: An optional entity tag which identifies the exact version of the data.
      /// `lastModified`: An optional parameter denoting the last modified date time of the data.
      ///
      /// **Output**
      ///
      /// Task of `Some HttpContext` after writing to the body of the response.
      ///
      member this.WriteStreamAsync (enableRangeProcessing : bool)
                                   (stream                : Stream)
                                   (eTag                  : EntityTagHeaderValue option)
  
negative.code: // HttpHandler functions
  // ---------------------------
  
  /// <summary>
  /// Streams data to the client.
  ///
  /// The handler will respect any valid HTTP pre-conditions (e.g. If-Match, If-Modified-Since, etc.) and return the most appropriate response. If the optional parameters eTag and/or lastModified have been set, then it will also set the ETag and/or Last-Modified HTTP headers in the response.
  /// </summary>
  /// <param name="enableRangeProcessing">enableRangeProcessing: If enabled then the handler will respect the Range and If-Range HTTP headers of the request as well as set all necessary HTTP headers in the response to enable HTTP range processing.</param>
  /// <param name="stream">The stream to be send to the client.</param>
  /// <param name="eTag">An optional entity tag which identifies the exact version of the data.</param>
  /// <param name="lastModified">An optional parameter denoting the last modified date time of the file.</param>
  /// <param name="ctx"></param>
  /// <returns>A Giraffe <see cref="HttpHandler"/> function which can be composed into a bigger web application.</returns>
  let streamData (enableRangeProcessing : bool)
                 (stream                : Stream)
                 (eTag                  : EntityTagHeaderValue option)
  