summaryrefslogtreecommitdiff
path: root/vendor/oyejorge/less.php/lib/Less/Autoloader.php
diff options
context:
space:
mode:
authorPierre Schmitz <pierre@archlinux.de>2015-12-20 09:00:55 +0100
committerPierre Schmitz <pierre@archlinux.de>2015-12-20 09:00:55 +0100
commita2190ac74dd4d7080b12bab90e552d7aa81209ef (patch)
tree8b31f38de9882d18df54cf8d9e0de74167a094eb /vendor/oyejorge/less.php/lib/Less/Autoloader.php
parent15e69f7b20b6596b9148030acce5b59993b95a45 (diff)
parent257401d8b2cf661adf36c84b0e3fd1cf85e33c22 (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.php79
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