From 775020666a9608a64b6c9c5628135b8f9ea4eee7 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Wed, 18 Jan 2012 10:08:07 -0600 Subject: [PATCH] automatically prepare the directories registered with the auto-loader. --- laravel/autoloader.php | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/laravel/autoloader.php b/laravel/autoloader.php index e79a31b8..64886d91 100644 --- a/laravel/autoloader.php +++ b/laravel/autoloader.php @@ -160,11 +160,7 @@ public static function alias($class, $alias) */ public static function psr($directory) { - $directories = array_map(function($directory) - { - return rtrim($directory, '/').'/'; - - }, (array) $directory); + $directories = static::format($directory); static::$psr = array_unique(array_merge(static::$psr, $directories)); } @@ -177,7 +173,26 @@ public static function psr($directory) */ public static function namespaces($mappings) { + $directories = static::format(array_values($mappings)); + + $mappings = array_combine(array_keys($mappings), $directories); + static::$namespaces = array_merge(static::$namespaces, $mappings); } + /** + * Format an array of directories with the proper trailing slashes. + * + * @param array $directories + * @return array + */ + protected static function format($directories) + { + return array_map(function($directory) + { + return rtrim($directory, DS).DS; + + }, (array) $directories); + } + } \ No newline at end of file