Question

Given this:

open System.Linq

let iota n = [0..(n-1)]

the following produces an error:

[2; 3; 4].SelectMany(fun n -> iota n)

Is there a way to pass function values to SelectMany?

Était-ce utile?

La solution

You need to cast the result to a seq<int>:

[2; 3; 4].SelectMany(fun n -> iota n :> int seq)

alternatively you could use List.collect:

[2; 3; 4] |> List.collect iota
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top