Class: Line::Message::Builder::Validators::Enum
- Inherits:
-
Object
- Object
- Line::Message::Builder::Validators::Enum
- Defined in:
- lib/line/message/builder/validators/enum.rb
Overview
Validate values against a set of allowed values.
Instance Attribute Summary collapse
-
#allowed_values ⇒ Object
readonly
Returns the value of attribute allowed_values.
Instance Method Summary collapse
-
#initialize(*allowed_values) ⇒ Enum
constructor
A new instance of Enum.
- #valid!(value) ⇒ Object
Constructor Details
#initialize(*allowed_values) ⇒ Enum
Returns a new instance of Enum.
11 12 13 |
# File 'lib/line/message/builder/validators/enum.rb', line 11 def initialize(*allowed_values) @allowed_values = allowed_values end |
Instance Attribute Details
#allowed_values ⇒ Object (readonly)
Returns the value of attribute allowed_values.
9 10 11 |
# File 'lib/line/message/builder/validators/enum.rb', line 9 def allowed_values @allowed_values end |
Instance Method Details
#valid!(value) ⇒ Object
15 16 17 18 19 |
# File 'lib/line/message/builder/validators/enum.rb', line 15 def valid!(value) return if allowed_values.include?(value.to_sym) raise ValidationError, "Invalid value: #{value}. Allowed values are: #{allowed_values.join(", ")}" end |