Ich habe eine Liste, die ich Brocken bis zu wollen, basierend auf einem Übergang vom Strukturtyp B zu A. So zum Beispiel, ich habe folgende:Chunking Liste basiert auf Strukturtyp Ändern
iex(1)> defmodule A, do: defstruct []
{:module, A ...
iex(2)> defmodule B, do: defstruct []
{:module, B ...
iex(3)> values = [ %A{}, %A{}, %B{}, %B{}, %B{}, %A{}, %A{}, %B{} ]
[%A{}, %A{}, %B{}, %B{}, %B{}, %A{}, %A{}, %B{}]
Ich mag haben dass Daten chunked bis in eine 2-Element-Liste enthält:
[ [ %A{}, %A{}, %B{}, %B{}, %B{} ], [ %A{}, %A{}, %B{} ] ]
Wenn der Eingang A des alle oder alle B zunächst sein, so würde der Ausgang unverändert bleiben, da kein B-> trat ein Übergang.
Ich stelle mir vor Enum.chunk_by/2
ist der Weg zu gehen, aber ich habe Probleme herauszufinden, wie man den Kontext des vorherigen Elements zu wissen, wann zu teilen.
Wie sieht eine idiomatische Lösung für so etwas aus?
Ich muss dieses hier auswählen, da es das einzige ist, das ich in der Lage bin zu halten, wenn ich mein aktuelles Wissen über Elixier anwende! Vielen Dank! –