Class: Anodator::Validator::ValueProxy
- Inherits:
-
Object
- Object
- Anodator::Validator::ValueProxy
- Defined in:
- lib/anodator/validator/value_proxy.rb
Constant Summary collapse
- REGEXP_INDIRECT =
/\A\[\[([^\]]+)\]\]\Z/
Instance Method Summary collapse
- #direct? ⇒ Boolean
- #indirect? ⇒ Boolean
-
#initialize(value, validator) ⇒ ValueProxy
constructor
A new instance of ValueProxy.
- #to_s ⇒ Object
- #value ⇒ Object
Constructor Details
#initialize(value, validator) ⇒ ValueProxy
Returns a new instance of ValueProxy.
6 7 8 9 10 11 12 13 14 15 |
# File 'lib/anodator/validator/value_proxy.rb', line 6 def initialize(value, validator) @value = value @validator = validator @indirect = false if matched = REGEXP_INDIRECT.match(@value.to_s) @indirect = true @value = matched[1] end end |
Instance Method Details
#direct? ⇒ Boolean
21 22 23 |
# File 'lib/anodator/validator/value_proxy.rb', line 21 def direct? return !@indirect end |
#indirect? ⇒ Boolean
17 18 19 |
# File 'lib/anodator/validator/value_proxy.rb', line 17 def indirect? return @indirect end |
#to_s ⇒ Object
33 34 35 36 37 38 39 |
# File 'lib/anodator/validator/value_proxy.rb', line 33 def to_s if direct? return @value.to_s else return "#{@value}(Indirect)" end end |
#value ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/anodator/validator/value_proxy.rb', line 25 def value if direct? return @value else return @validator.argument_value_at(@value) end end |