Elastex v0.2.0 Elastex.Extender behaviour

This module contains functions extended by other modules

Summary

Functions

Extends the url builder’s url

Adds params to builder

Functions

extend_url(builder, list)

Specs

extend_url(%Elastex.Builder{action: term, body: term, headers: term, id: term, index: term, method: term, options: term, params: term, type: term, url: term}, [String.t]) :: %Elastex.Builder{action: term, body: term, headers: term, id: term, index: term, method: term, options: term, params: term, type: term, url: term}

Extends the url builder’s url

Examples

iex> builder = %Elastex.Builder{url: "twitter"}
iex> Elastex.Extender.extend_url(builder, ["tweet"])
%Elastex.Builder {
  url: "twitter/tweet"
}
params(builder, params)

Specs

params(%Elastex.Builder{action: term, body: term, headers: term, id: term, index: term, method: term, options: term, params: term, type: term, url: term}, keyword(String.t)) :: %Elastex.Builder{action: term, body: term, headers: term, id: term, index: term, method: term, options: term, params: keyword(String.t), type: term, url: term}

Adds params to builder

Examples

iex> Elastex.Extender.params(%Elastex.Builder{}, [q: "user:mike"])
%Elastex.Builder {
  params: [q: "user:mike"]
}

Callbacks

extend_url(%, list)

Specs

extend_url(%Elastex.Builder{action: term, body: term, headers: term, id: term, index: term, method: term, options: term, params: term, type: term, url: term}, [String.t]) :: %Elastex.Builder{action: term, body: term, headers: term, id: term, index: term, method: term, options: term, params: term, type: term, url: String.t}
params(%, keyword)

Specs

params(%Elastex.Builder{action: term, body: term, headers: term, id: term, index: term, method: term, options: term, params: term, type: term, url: term}, keyword(String.t)) :: %Elastex.Builder{action: term, body: term, headers: term, id: term, index: term, method: term, options: term, params: keyword(String.t), type: term, url: term}