![]()
- How can I avoid using the temp var edges (i.e. use a continuous pipe)
# ...
|> Map.get("edges")
|> case do
[] -> :ok
edges ->
edges
|> Enum.at(-1)
# get last edge cursor
|> Map.get("cursor")
|> IO.inspect
# recurse to get next page
|> get(pagenum + 1)
:ok
end
# ...
But I’d probably want to refactor what you have to something like
def handle_resp(status_code, raw_body)
def handle_resp(200, raw_body) do
raw_body
|> Posion.decode!()
|> extract_edges!()
|> handle_edges()
end
defp extract_edges!(%{"data" => %{"repository" => %{"issues" => %{"edges" => edges}}}}) do
edges
end
defp extract_edges!(invalid_body) do
raise("invalid body: #{inspect(invalid_body)}")
end
defp handle_edges([]), do: :ok
defp handle_edges(edges) when is_list(edges) do
# not sure what this is supposed to do
# ...
:ok
end
# etc






















