From 27a05f4c24333166f940e98ade9376a2be98283b Mon Sep 17 00:00:00 2001 From: Tobias Schultze Date: Thu, 12 Apr 2012 06:16:26 +0200 Subject: [PATCH] [Routing] small optimization of PhpGeneratorDumper --- .../Generator/Dumper/PhpGeneratorDumper.php | 103 +++++++----------- 1 file changed, 37 insertions(+), 66 deletions(-) diff --git a/src/Symfony/Component/Routing/Generator/Dumper/PhpGeneratorDumper.php b/src/Symfony/Component/Routing/Generator/Dumper/PhpGeneratorDumper.php index 0725ca6ecd..8fe58a8d1e 100644 --- a/src/Symfony/Component/Routing/Generator/Dumper/PhpGeneratorDumper.php +++ b/src/Symfony/Component/Routing/Generator/Dumper/PhpGeneratorDumper.php @@ -43,17 +43,45 @@ class PhpGeneratorDumper extends GeneratorDumper 'base_class' => 'Symfony\\Component\\Routing\\Generator\\UrlGenerator', ), $options); - return - $this->startClass($options['class'], $options['base_class']). - $this->addConstructor(). - $this->addGenerator(). - $this->endClass() - ; + $declaredRouteNames = "array(\n"; + foreach ($this->getRoutes()->all() as $name => $route) { + $declaredRouteNames .= " '$name' => true,\n"; + } + $declaredRouteNames .= ' );'; + + return <<context = \$context; + } + +{$this->addGenerator()} +} + +EOF; } private function addGenerator() { - $methods = array(); + $methods = ''; foreach ($this->getRoutes()->all() as $name => $route) { $compiledRoute = $route->compile(); @@ -64,20 +92,16 @@ class PhpGeneratorDumper extends GeneratorDumper $escapedName = str_replace('.', '__', $name); - $methods[] = <<getRoutes()->all() as $name => $route) { - $routes[] = " '$name' => true,"; - } - $routes = implode("\n", $routes); - - return <<context = \$context; - } - -EOF; - } - - private function endClass() - { - return <<