class SendGrid::Email
Attributes
email[RW]
name[RW]
Public Class Methods
new(email:, name: nil)
click to toggle source
@param [String] email required e-mail address @param [String] name optionally personification
# File lib/sendgrid/helpers/mail/email.rb, line 9 def initialize(email:, name: nil) if name @email = email @name = name else @email, @name = split_email(email) end end
Public Instance Methods
split_email(email)
click to toggle source
# File lib/sendgrid/helpers/mail/email.rb, line 18 def split_email(email) split = /(?:(?<address>.+)\s)?<?(?<email>.+@[^>]+)>?/.match(email) raise ArgumentError, "email (#{email}) is invalid" unless split [split[:email], split[:address]] end
to_json(*)
click to toggle source
# File lib/sendgrid/helpers/mail/email.rb, line 25 def to_json(*) { 'email' => email, 'name' => name }.delete_if { |_, value| value.to_s.strip == '' } end