From 4066794ec76523efbbe1c488abb05fcfff4e7774 Mon Sep 17 00:00:00 2001 From: Alan Norton Date: Tue, 23 Feb 2021 08:46:47 -0500 Subject: [PATCH] format_email_address/2 can return a single address or a list (#585) `Formatter.format_email_address/2` can return an address or [list of addresses](https://github.com/thoughtbot/bamboo/blob/9e13937eb9a8f5d67c4c9c1d9009ae798f04d5c8/lib/bamboo/formatter.ex#L74). This commit updates the `@spec` for `format_email_address` to account for both single address and lists of addresses (via the [`Email.address_list()`](https://github.com/thoughtbot/bamboo/blob/4080bd67eb13347c57de50dc32fefaa473e6c423/lib/bamboo/email.ex#L75) type). --- lib/bamboo/formatter.ex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/bamboo/formatter.ex b/lib/bamboo/formatter.ex index 04b68f83..0c6e0aed 100644 --- a/lib/bamboo/formatter.ex +++ b/lib/bamboo/formatter.ex @@ -56,7 +56,7 @@ defprotocol Bamboo.Formatter do """ @doc ~S""" - Receives data and opts and returns a string or a two item tuple `{name, address}` + Receives data and opts and returns a string, a two item tuple `{name, address}`, or a list of either. opts is a map with the key `:type` and a value of `:from`, `:to`, `:cc` or `:bcc`. You can pattern match on this to customize @@ -65,7 +65,7 @@ defprotocol Bamboo.Formatter do @type opts :: %{optional(:type) => :from | :to | :cc | :bcc} - @spec format_email_address(any, opts) :: Bamboo.Email.address() + @spec format_email_address(any, opts) :: Bamboo.Email.address_list() def format_email_address(data, opts) end