cover/Elixir.Tool.Index.html

1 defmodule Tool.Index do
2 import Tools, only: [exec: 2]
3
4 def set(key, value) do
5 2 {result, _state} = exec(spec(:set, key, value), %{})
6 2 result
7 end
8
9 defp spec(op, key, value) do
10 2 %{"name" => "#{op}", "args" => %{"key" => "#{key}", "value" => value}}
11 end
12
13 def get(key) do
14 1 {result, _state} =
15 1 exec(%{"name" => "get", "args" => %{"key" => "#{key}"}}, %{})
16
17 1 result
18 end
19
20 def tell(target, message) do
21
:-(
{result, _state} = exec(task(target, message), %{})
22
:-(
result
23 end
24
25 defp task(target, message) do
26
:-(
%{
27 "name" => "tell",
28
:-(
"args" => %{"recipient" => "#{target}", "message" => "#{message}"}
29 }
30 end
31 end
Line Hits Source