| Class | Facter::Tag |
| In: |
lib/facter.rb
|
| Parent: | Object |
A restricting tag for fact resolution mechanisms. The tag must be true for the resolution mechanism to be suitable.
| fact | [RW] | |
| op | [RW] | |
| value | [RW] |
Add the tag. Requires the fact name, an operator, and the value we’re comparing to.
# File lib/facter.rb, line 480
480: def initialize(fact, *values)
481: @fact = fact
482: @values = values
483: end
# File lib/facter.rb, line 485
485: def to_s
486: return "'%s' '%s'" % [@fact, @values.join(",")]
487: end
Evaluate the fact, returning true or false.
# File lib/facter.rb, line 490
490: def true?
491: fact = nil
492: unless fact = Facter[@fact]
493: Facter.debug "No fact for %s" % @fact
494: return false
495: end
496: value = fact.value
497:
498: if value.nil?
499: return false
500: end
501:
502: retval = @values.find { |v|
503: if value == v
504: break true
505: end
506: }
507:
508: if retval
509: retval = true
510: else
511: retval = false
512: end
513:
514: return retval || false
515: end