def check_condition?(c, v)
      c = c[0..-2].to_sym if invert = (c[-1] == '!')
      raise Error, "The condition `#{c}` either does not exist, or is not an instance of Proc" unless Proc === self.conditions[c]
      retval = instance_exec(v, &self.conditions[c])
      invert ? !retval : !!retval
    end
def check_condition?(c, v)
      c = c[0..-2].to_sym if invert = (c[-1] == '!')
      raise Error, "The condition `#{c}` either does not exist, or is not an instance of Proc" unless Proc === self.conditions[c]
      retval = instance_exec(v, &self.conditions[c])
      invert ? !retval : !!retval
    end
Test the given condition, returning true if the condition passes, or false otherwise.