original_string: protected function determineModelReferenceStrategy(Model $model, $strategy = null)
      {
          if (null !== $strategy) {
              $strategy = $this->makeReferenceStrategyInstance($strategy);
          }
  
          if ( ! $strategy) {
              $strategy = $this->makeReferenceStrategy($model);
          }
  
          if ( ! $strategy) {
              $strategy = $this->getDefaultReferenceStrategyInstance();
          }
  
          return $strategy;
      }
code: protected function determineModelReferenceStrategy(Model $model, $strategy = null)
      {
          if (null !== $strategy) {
              $strategy = $this->makeReferenceStrategyInstance($strategy);
          }
  
          if ( ! $strategy) {
              $strategy = $this->makeReferenceStrategy($model);
          }
  
          if ( ! $strategy) {
              $strategy = $this->getDefaultReferenceStrategyInstance();
          }
  
          return $strategy;
      }
code_tokens: protected function determineModelReferenceStrategy ( Model $ model , $ strategy = null ) { if ( null !== $ strategy ) { $ strategy = $ this -> makeReferenceStrategyInstance ( $ strategy ) ; } if ( ! $ strategy ) { $ strategy = $ this -> makeReferenceStrategy ( $ model ) ; } if ( ! $ strategy ) { $ strategy = $ this -> getDefaultReferenceStrategyInstance ( ) ; } return $ strategy ; }
docstring: Returns the strategy reference instance for a model.
  
  @param Model       $model
  @param string|null $strategy
  @return ReferenceStrategyInterface|null
docstring_tokens: Returns the strategy reference instance for a model .