   @doc """
   Evaluate a tag and return the condition that succeeded or nil
   """
-  @spec eval(any, Context.t) :: {iolist, Context.t}
+  @spec eval(any, Context.t()) :: {iolist, Context.t()}
   def eval(tag, context) do
     case do_eval(tag, context) do
       {text, context} -> {text, context}


  defp do_eval([{:case_exp, [field]} | [{:whens, when_map} | _]] = tag, context) do
    result = when_map[Argument.get(field, context)]
    if result do
      result[:text]
    else

    context = %{context | vars: Map.put(context.vars, field, Argument.get(argument, context))}
    {nil, context}
  end

  defp do_eval(:comment, _context), do: nil

  defp eval_elsif({:elsif_exp, elsif_exp}, context) do
