как открыть seq <seq <... >> или другим способом сделать Seq.collect (весело x -> x) - PullRequest
1 голос
/ 23 мая 2011
dashboard.Grid
|> Seq.mapi ^-^ fun y sx -> 
    sx  |> Seq.mapi ^-^ fun x s -> 
        if not <| s.IsEmpty && s.CellState.Color = color then 
            let psteps = s.CellState.motion( dashboard, new SPosition(x,y), color )
            if psteps <> null then
                if psteps.IsEmpty then
                    Some(psteps)
                else
                    None
            else None
        else None
    |> Seq.choose id
|> Seq.collect(fun x -> x)
|> Seq.collect(fun x -> x)

Итак, я просто считаю, что последняя часть (2 строки) этой последовательности странная.Могу ли я открыть последовательность другим способом?List.ofSeq () здесь не работает.

спасибо.

1 Ответ

4 голосов
/ 23 мая 2011

Я думаю, что вы ищете Seq.concat, что совпадает с Seq.collect(fun x -> x) (или Seq.collect id).

...