May 2018
Intermediate to advanced
412 pages
9h 3m
English
All that’s left from our design is to create the formatted table. The following would be a nice interface:
| | def process({user, project, count}) do |
| | Issues.GithubIssues.fetch(user, project) |
| | |> decode_response() |
| | |> sort_into_ascending_order() |
| | |> last(count) |
| » | |> print_table_for_columns(["number", "created_at", "title"]) |
| | end |
We pass the formatter the list of columns to include in the table, and it writes the table to standard output. The formatter doesn’t add any new project- or design-related techniques, so we’ll just show the listing.
| | defmodule Issues.TableFormatter do |
| | |
| | import Enum, only: [ each: 2, map: 2, map_join: 3, ... |
Read now
Unlock full access