Class: NextStation::Operation::ErrorsDSL
- Inherits:
-
Object
- Object
- NextStation::Operation::ErrorsDSL
- Defined in:
- lib/next_station/operation/errors.rb
Overview
DSL for defining multiple errors.
Instance Attribute Summary collapse
Instance Method Summary collapse
-
#error_type(type) {|ErrorDefinition| ... } ⇒ Object
Defines a new error type.
-
#initialize ⇒ ErrorsDSL
constructor
Initializes a new ErrorsDSL.
Constructor Details
#initialize ⇒ ErrorsDSL
Initializes a new ErrorsDSL.
82 83 84 |
# File 'lib/next_station/operation/errors.rb', line 82 def initialize @definitions = {} end |
Instance Attribute Details
#definitions ⇒ Hash<Symbol, ErrorDefinition> (readonly)
79 80 81 |
# File 'lib/next_station/operation/errors.rb', line 79 def definitions @definitions end |
Instance Method Details
#error_type(type) {|ErrorDefinition| ... } ⇒ Object
Defines a new error type.
89 90 91 92 93 94 |
# File 'lib/next_station/operation/errors.rb', line 89 def error_type(type, &block) definition = ErrorDefinition.new(type) definition.instance_eval(&block) if block_given? definition.validate! @definitions[type] = definition end |