original_string: protected function prepareRule($rule)
      {
          if ($rule instanceof Closure) {
              $rule = new ClosureValidationRule($rule);
          }
  
          if (! is_object($rule) ||
              $rule instanceof RuleContract ||
              ($rule instanceof Exists && $rule->queryCallbacks()) ||
              ($rule instanceof Unique && $rule->queryCallbacks())) {
              return $rule;
          }
  
          return (string) $rule;
      }
code: protected function prepareRule($rule)
      {
          if ($rule instanceof Closure) {
              $rule = new ClosureValidationRule($rule);
          }
  
          if (! is_object($rule) ||
              $rule instanceof RuleContract ||
              ($rule instanceof Exists && $rule->queryCallbacks()) ||
              ($rule instanceof Unique && $rule->queryCallbacks())) {
              return $rule;
          }
  
          return (string) $rule;
      }
code_tokens: protected function prepareRule ( $ rule ) { if ( $ rule instanceof Closure ) { $ rule = new ClosureValidationRule ( $ rule ) ; } if ( ! is_object ( $ rule ) || $ rule instanceof RuleContract || ( $ rule instanceof Exists && $ rule -> queryCallbacks ( ) ) || ( $ rule instanceof Unique && $ rule -> queryCallbacks ( ) ) ) { return $ rule ; } return ( string ) $ rule ; }
docstring: Prepare the given rule for the Validator.
  
  @param  mixed  $rule
  @return mixed
docstring_tokens: Prepare the given rule for the Validator .