LTSV parser implementation in Elixir
Elixir
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
config
lib
test
.gitignore
.travis.yml
LICENSE
README.md
mix.exs
mix.lock

README.md

LTSV - A Pure Elixir LTSV Parser

hex.pm version hex.pm downloads Build Status Coverage Status

A Labeled Tab-separated Values parser implementation in Elixir

What's LTSV?

http://ltsv.org/

Installation

Add :ltsv library to your project's dependencies in mix.exs:

defp deps do
  [
    {:ltsv, "~> 0.1"}
  ]
end

And fetch:

$ mix deps.get

Usage

Parse a ltsv string

iex> LTSV.parse("name:taka\taddress:Seattle\\nname:neko\taddress:near") |> Enum.map(&Dict.to_list/1)
[[{"name", "taka"}, {"address", "Seattle"}], [{"name", "neko"}, {"address", "near"}]]

Dump a list of Dicts into a ltsv string

iex> LTSV.dump [%{"address" => "Seattle", "name" => "taka"}, %{"address" => "Chicago", "name" => "tetsuo"}]
"address:Seattle\tname:taka\naddress:Chicago\tname:tetsuo"

iex> LTSV.dump [%{name: "taka"}]
"name:taka"

Documentation

http://hexdocs.pm/ltsv/

License

Copyright © 2014 Takayuki Matsubara, released under the MIT license.