original_string: private function compileRoutes(RouteCollection $routes, bool $matchHost): string
      {
          [$staticRoutes, $dynamicRoutes] = $this->groupStaticRoutes($routes);
  
          $code = $this->compileStaticRoutes($staticRoutes, $matchHost);
          $chunkLimit = \count($dynamicRoutes);
  
          while (true) {
              try {
                  $this->signalingException = new \RuntimeException('preg_match(): Compilation failed: regular expression is too large');
                  $code .= $this->compileDynamicRoutes($dynamicRoutes, $matchHost, $chunkLimit);
  
                  break;
              } catch (\Exception $e) {
                  if (1 < $chunkLimit && $this->signalingException === $e) {
                      $chunkLimit = 1 + ($chunkLimit >> 1);
  
                      continue;
                  }
  
                  throw $e;
              }
          }
  
          // used to display the Welcome Page in apps that don't define a homepage
          $code .= "        if ('/' === \$pathinfo && !\$allow && !\$allowSchemes) {\n";
          $code .= "            throw new Symfony\Component\Routing\Exception\NoConfigurationException();\n";
          $code .= "        }\n";
  
          return $code;
      }
code: private function compileRoutes(RouteCollection $routes, bool $matchHost): string
      {
          [$staticRoutes, $dynamicRoutes] = $this->groupStaticRoutes($routes);
  
          $code = $this->compileStaticRoutes($staticRoutes, $matchHost);
          $chunkLimit = \count($dynamicRoutes);
  
          while (true) {
              try {
                  $this->signalingException = new \RuntimeException('preg_match(): Compilation failed: regular expression is too large');
                  $code .= $this->compileDynamicRoutes($dynamicRoutes, $matchHost, $chunkLimit);
  
                  break;
              } catch (\Exception $e) {
                  if (1 < $chunkLimit && $this->signalingException === $e) {
                      $chunkLimit = 1 + ($chunkLimit >> 1);
  
                      continue;
                  }
  
                  throw $e;
              }
          }
  
          // used to display the Welcome Page in apps that don't define a homepage
          $code .= "        if ('/' === \$pathinfo && !\$allow && !\$allowSchemes) {\n";
          $code .= "            throw new Symfony\Component\Routing\Exception\NoConfigurationException();\n";
          $code .= "        }\n";
  
          return $code;
      }
code_tokens: private function compileRoutes ( RouteCollection $ routes , bool $ matchHost ) : string { [ $ staticRoutes , $ dynamicRoutes ] = $ this -> groupStaticRoutes ( $ routes ) ; $ code = $ this -> compileStaticRoutes ( $ staticRoutes , $ matchHost ) ; $ chunkLimit = \ count ( $ dynamicRoutes ) ; while ( true ) { try { $ this -> signalingException = new \ RuntimeException ( 'preg_match(): Compilation failed: regular expression is too large' ) ; $ code .= $ this -> compileDynamicRoutes ( $ dynamicRoutes , $ matchHost , $ chunkLimit ) ; break ; } catch ( \ Exception $ e ) { if ( 1 < $ chunkLimit && $ this -> signalingException === $ e ) { $ chunkLimit = 1 + ( $ chunkLimit >> 1 ) ; continue ; } throw $ e ; } } // used to display the Welcome Page in apps that don't define a homepage $ code .= "        if ('/' === \$pathinfo && !\$allow && !\$allowSchemes) {\n" ; $ code .= "            throw new Symfony\Component\Routing\Exception\NoConfigurationException();\n" ; $ code .= "        }\n" ; return $ code ; }
docstring: Generates PHP code to match a RouteCollection with all its routes.
docstring_tokens: Generates PHP code to match a RouteCollection with all its routes .