Skip to content

MartinKavik/ord_map

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OrdMap

Hex.pm

Ordered map for Elixir lang

  • A set of functions and a macro for working with ordered maps.

  • An ordered map is a struct with a list of key-value tuples where key and value can be any value.

  • It can be serialized to JSON with Poison - you need to add OrdMap Poison encoder to your project dependencies.

Usage

iex> o%{"foo" => "bar"}
%OrdMap{tuples: [{"foo", "bar"}]}

iex> my_ord_map = OrdMap.new([{"foo", 1}, {"bar", 2}])
iex> OrdMap.get(my_ord_map, "bar")
2

iex> my_ord_map = o%{"foo" => o(%{nested: "something"}), "bar" => "two"}
iex> my_ord_map["foo"][:nested]
"something"

iex> my_ord_map = o%{"foo" => 1, "bar" => 2}
iex> Enum.map my_ord_map, fn {key, value} -> {key, value + 1} end
[{"foo", 2}, {"bar", 3}]

Installation

First, add OrdMap to your mix.exs dependencies:

def deps do
  [
    {:ord_map, "~> 0.1.0"}
  ]
end

Then, update your dependencies:

$ mix deps.get

License

OrdMap is released under MIT (see LICENSE).

Releases

No releases published

Packages

No packages published

Languages