diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2015-12-20 09:00:55 +0100 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2015-12-20 09:00:55 +0100 |
commit | a2190ac74dd4d7080b12bab90e552d7aa81209ef (patch) | |
tree | 8b31f38de9882d18df54cf8d9e0de74167a094eb /vendor/oyejorge/less.php/lib/Less/Autoloader.php | |
parent | 15e69f7b20b6596b9148030acce5b59993b95a45 (diff) | |
parent | 257401d8b2cf661adf36c84b0e3fd1cf85e33c22 (diff) |
Merge branch 'mw-1.26'
Diffstat (limited to 'vendor/oyejorge/less.php/lib/Less/Autoloader.php')
-rw-r--r-- | vendor/oyejorge/less.php/lib/Less/Autoloader.php | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/vendor/oyejorge/less.php/lib/Less/Autoloader.php b/vendor/oyejorge/less.php/lib/Less/Autoloader.php new file mode 100644 index 00000000..b6300c02 --- /dev/null +++ b/vendor/oyejorge/less.php/lib/Less/Autoloader.php @@ -0,0 +1,79 @@ +<?php + +/** + * Autoloader + * + * @package Less + * @subpackage autoload + */ +class Less_Autoloader { + + /** + * Registered flag + * + * @var boolean + */ + protected static $registered = false; + + /** + * Library directory + * + * @var string + */ + protected static $libDir; + + /** + * Register the autoloader in the spl autoloader + * + * @return void + * @throws Exception If there was an error in registration + */ + public static function register(){ + if( self::$registered ){ + return; + } + + self::$libDir = dirname(__FILE__); + + if(false === spl_autoload_register(array('Less_Autoloader', 'loadClass'))){ + throw new Exception('Unable to register Less_Autoloader::loadClass as an autoloading method.'); + } + + self::$registered = true; + } + + /** + * Unregisters the autoloader + * + * @return void + */ + public static function unregister(){ + spl_autoload_unregister(array('Less_Autoloader', 'loadClass')); + self::$registered = false; + } + + /** + * Loads the class + * + * @param string $className The class to load + */ + public static function loadClass($className){ + + + // handle only package classes + if(strpos($className, 'Less_') !== 0){ + return; + } + + $className = substr($className,5); + $fileName = self::$libDir . DIRECTORY_SEPARATOR . str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php'; + + if(file_exists($fileName)){ + require $fileName; + return true; + }else{ + throw new Exception('file not loadable '.$fileName); + } + } + +}
\ No newline at end of file |