code: public function useRuleSet(RuleSetInterface $ruleSet)
      {
          $fixers = [];
          $fixersByName = [];
          $fixerConflicts = [];
  
          $fixerNames = array_keys($ruleSet->getRules());
          foreach ($fixerNames as $name) {
              if (!\array_key_exists($name, $this->fixersByName)) {
                  throw new \UnexpectedValueException(sprintf('Rule "%s" does not exist.', $name));
              }
  
              $fixer = $this->fixersByName[$name];
  
              $config = $ruleSet->getRuleConfiguration($name);
              if (null !== $config) {
                  if ($fixer instanceof ConfigurableFixerInterface) {
                      if (!\is_array($config) || !\count($config)) {
                          throw new InvalidFixerConfigurationException($fixer->getName(), 'Configuration must be an array and may not be empty.');
                      }
  
                      $fixer->configure($config);
                  } else {
                      throw new InvalidFixerConfigurationException($fixer->getName(), 'Is not configurable.');
                  }
              }
  
              $fixers[] = $fixer;
              $fixersByName[$name] = $fixer;
  
              $conflicts = array_intersect($this->getFixersConflicts($fixer), $fixerNames);
              if (\count($conflicts) > 0) {
                  $fixerConflicts[$name] = $conflicts;
              }
          }
  
          if (\count($fixerConflicts) > 0) {
              throw new \UnexpectedValueException($this->generateConflictMessage($fixerConflicts));
          }
  
          $this->fixers = $fixers;
          $this->fixersByName = $fixersByName;
  
          return $this;
      }
docs: Apply RuleSet on fixers to filter out all unwanted fixers.
  
  @param RuleSetInterface $ruleSet
  
  @return $this