Sha256: 656c87baced05f16b59f06ad7ffe4b9ef6485314a36e01daafcd87ea39a7f7ef
Contents?: true
Size: 632 Bytes
Versions: 2
Compression:
Stored size: 632 Bytes
Contents
require 'seory' require 'seory/condition/block' require 'seory/condition/params' require 'seory/condition/path' require 'seory/condition/slug' module Seory module Condition class SupposionFailed < Seory::Error; end extend self def [](condition) if condition.respond_to?(:match?) condition else suppose(condition) end end private def suppose(condition) condition_class = [Params, Slug].detect {|klass| klass.supposable?(condition) } raise SupposionFailed.new(condition.inspect) unless condition_class condition_class.new(condition) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
seory-0.2.0 | lib/seory/condition.rb |
seory-0.1.0 | lib/seory/condition.rb |