# `Giza.QueryAdapter`

Behaviour for executing raw query strings against Sphinx/Manticore.

The default implementation (`Giza.QueryAdapter.MyXQL`) sends the query over
the MySQL protocol via the MyXQL library.  In test, swap in
`Giza.QueryAdapter.Sandbox` to record queries and return canned responses
without a running search daemon.

Configure the adapter in your application config:

    config :giza_sphinxsearch, :query_adapter, Giza.QueryAdapter.Sandbox

# `raw_result`

```elixir
@type raw_result() :: {:ok, map()} | {:error, term()}
```

# `execute`

```elixir
@callback execute(query_string :: String.t()) :: raw_result()
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
