Sha256: 6804f4bab8fa4b6667f92bb3e7644ca9b9a349bc58516d1eef1781c6a09f5dfb
Contents?: true
Size: 796 Bytes
Versions: 1
Compression:
Stored size: 796 Bytes
Contents
require 'seory' require 'seory/page_condition/block_condition' require 'seory/page_condition/default_condition' require 'seory/page_condition/params_condition' require 'seory/page_condition/path_condition' require 'seory/page_condition/slug_condition' module Seory module PageCondition class SupposionFailed < Seory::Error; end extend self def [](condition) if condition == :default DefaultCondition.new elsif condition.respond_to?(:match?) condition else suppose(condition) end end private def suppose(condition) klass = [ParamsCondition, SlugCondition].detect {|klass| klass.supposable?(condition) } raise SupposionFailed.new(condition.inspect) unless klass klass.new(condition) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
seory-0.0.4 | lib/seory/page_condition.rb |