defmodule Alixir do alias Alixir.Request alias Alixir.Request.Operation @type status_code :: integer @type body :: String.t @type reason :: String.t @spec request(Operation.t) :: {:ok, status_code, body} | {:error, reason} def request(operation) do operation |> Operation.perform |> Request.perform end end