In the following sample code:
namespace MyNamespace
open System.Threading.Tasks
module MyModule =
let handler fn = task { return! fn () }
If I hover the handler function the signature is:
val handler: fn: (unit -> #Task<'b>) -> Task<'b>
I haven’t see the #Task before. What is the meaning of the # sign in this case?
>Solution :
#Task<'t> is short for 'a when 'a :> Task<'t> – that is, any subtype of Task<'t>