Class: Sheetah::Types::Scalars::EmailCast
- Inherits:
-
Object
- Object
- Sheetah::Types::Scalars::EmailCast
- Includes:
- Cast
- Defined in:
- lib/sheetah/types/scalars/email_cast.rb
Instance Method Summary collapse
- #call(value, _messenger) ⇒ Object
-
#initialize(email_matcher: EMAIL_REGEXP) ⇒ EmailCast
constructor
A new instance of EmailCast.
Methods included from Cast
Constructor Details
#initialize(email_matcher: EMAIL_REGEXP) ⇒ EmailCast
Returns a new instance of EmailCast.
16 17 18 |
# File 'lib/sheetah/types/scalars/email_cast.rb', line 16 def initialize(email_matcher: EMAIL_REGEXP, **) @email_matcher = email_matcher end |
Instance Method Details
#call(value, _messenger) ⇒ Object
20 21 22 23 24 |
# File 'lib/sheetah/types/scalars/email_cast.rb', line 20 def call(value, _messenger) return value if @email_matcher.match?(value) throw :failure, Messaging::Messages::MustBeEmail.new(code_data: { value: value.inspect }) end |