Class: Lab42::BasicConstraints::Constraint
- Inherits:
-
Object
- Object
- Lab42::BasicConstraints::Constraint
- Defined in:
- lib/lab42/basic_constraints/constraint.rb,
lib/lab42/basic_constraints/constraints/int.rb
Direct Known Subclasses
Defined Under Namespace
Classes: IntConstraint
Instance Attribute Summary collapse
-
#default(&blk) ⇒ Object
readonly
Returns the value of attribute default.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
Instance Method Summary collapse
Instance Attribute Details
#default(&blk) ⇒ Object (readonly)
Returns the value of attribute default.
8 9 10 |
# File 'lib/lab42/basic_constraints/constraint.rb', line 8 def default @default end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
8 9 10 |
# File 'lib/lab42/basic_constraints/constraint.rb', line 8 def name @name end |
Instance Method Details
#call(value) ⇒ Object
10 11 12 13 |
# File 'lib/lab42/basic_constraints/constraint.rb', line 10 def call value return Result.ok if @constraint.(value) Result.error("#{_show value} is not a legal #{@name}", error: Lab42::BasicConstraints::ConstraintError) end |
#set_default(value = nil, &blk) ⇒ Object
29 30 31 32 33 34 35 36 37 38 |
# File 'lib/lab42/basic_constraints/constraint.rb', line 29 def set_default value=nil, &blk @default = if value value else blk end @has_default = true self end |