Sha256: f324ff953934a18d67d3c6a52146666f77529d0f70e9add9ad7cec9cff8164cf
Contents?: true
Size: 1.04 KB
Versions: 1
Compression:
Stored size: 1.04 KB
Contents
module Predicates def inverted(v, meth, pred) if meth == :self Type.responds(v, pred) v unless v.send(pred) end end def regular(v, meth, pred) if meth == :self Type.responds(v, pred) v if v.send(pred) else r = v.send(meth) Type.responds(r, pred) v if r.send(pred) end end def inverted_value(v, value, meth, pred) if meth == :self Type.responds(v, pred) v unless v.send(pred, value) end end def regular_value(v, value, meth, pred) if meth == :self Type.responds(v, pred) v if v.send(pred, value) else r = v.send(meth) Type.responds(r, pred) v if r.send(pred, value) end end def regular_regex(v, regex, meth) if meth == :self v if v.to_s.match(regex) else r = v.send(meth) v if r.to_s.match(regex) end end def inverted_regex(v, regex, meth) if meth == :self v unless v.to_s.match(regex) else r = v.send(meth) v unless r.to_s.match(regex) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
totally_lazy-0.0.5 | lib/predicates/predicates.rb |