Codebase list ohcount / d62f219c-a984-415f-b69c-f521b00b8f15/main ruby / gestalt / rules / not_rule.rb
d62f219c-a984-415f-b69c-f521b00b8f15/main

Tree @d62f219c-a984-415f-b69c-f521b00b8f15/main (Download .tar.gz)

not_rule.rb @d62f219c-a984-415f-b69c-f521b00b8f15/mainraw · history · blame

module Ohcount
	module Gestalt
		class NotRule < LogicalRule
			def triggers(gestalt_engine)
				rules.first && rules.first.triggers(gestalt_engine).any? ? [] : [Trigger.new]
			end

			def new_rule(r_class, *args, &block)
				raise ArgumentError.new("_not() accepts only a single rule") unless rules.empty?
				super(r_class, *args, &block)
			end

		end
	end
end