# Agent
Implementação uso de **Agent** em `Elixir`.
![alt-text](elixir_logo.jpg)
## Exemplos de Uso
**Atualizar valor**:
```elixir
iex> Agente.update("xxx001")
:ok
```
**Buscar valor atual**:
```elixir
iex> Agente.value()
%{cursor: "xxx001"}
```
**Nova chave - valor**:
```elixir
iex> Agente.new(:index, "atualizacao")
:ok
iex> Agente.value()
%{cursor: :normal, index: "atualizacao"}
```
**Excluir um valor**:
```elixir
%{cursor: "novo valor hh", nova: "outro valor"}
iex> Agente.delete(:cursor)
%{nova: "outro valor"}
```
**Excluir muitos valores**:
```elixir
%{foo: "foo bar", nova: "outro valor"}
iex> Agente.drop([:foo, :nova])
%{}
```
## Configuração
Adicione a configuração abaixo à sua aplicação para incializar o ```Agent```:
```elixir
def application do
[
extra_applications: [:logger],
mod: {Agente, %{cursor: :normal}}
]
end
```
## Instalação
Se [disponível em Hex](https://hex.pm/docs/publish), o pacote poderá ser instalado
adicionando-se `agente` à sua lista de dependências em `mix.exs`:
```elixir
def deps do
[
{:agente, "~> 0.1.0"}
]
end
```
A documentação pode ser gerada com [ExDoc](https://github.com/elixir-lang/ex_doc)
e publicada em [HexDocs](https://hexdocs.pm). Após publicação, o ***docs*** poderá
ser encontrado em [https://hexdocs.pm/agente](https://hexdocs.pm/agente).