Current section
Files
Jump to
Current section
Files
lib/datamatrix/render/text.ex
defmodule DataMatrix.Render.Text do
@default_options %{
one: "1",
zero: "0",
newline: "\n",
separator: ""
}
def format(%{nrow: nrow, ncol: ncol, matrix: rows}, options \\ []) do
options = Map.merge(@default_options, Map.new(options))
symbol_for_one = to_string(options[:one])
symbol_for_zero = to_string(options[:zero])
rows
|> Stream.map(fn row ->
Stream.map(row, fn module ->
case module do
0 -> symbol_for_zero
1 -> symbol_for_one
end
end)
|> Enum.join(options[:separator])
end)
|> Enum.join(options[:newline])
end
end