/** * Trait constructor */ protected function __TStandardComponents() { /** @var mfe $class */ $class = get_called_class(); $stackObject = mfe::option('stackObject'); /** @var CObjectsStack $components */ $this->components = new $stackObject(['coreComponents' => new $stackObject([], 0), 'components' => new $stackObject([], 1)]); $this->closingComponents = new $stackObject(); $this->registerStandardComponents(); $this->_registerClosingComponent('di', $class); $this->_registerClosingComponent('componentManager', $class); }
/** * Constructor */ public function __construct() { $stack = mfe::option('stackObject'); $this->aliases = new $stack(); $this->filesMap = new $stack(mfe::app()->getFilesMap()); foreach (mfe::app()->getAliases() as $alias => $array) { foreach ($array as $value) { $this->registerAliasDirectory($alias, $value); } } $this->registerLoader(); return self::$instance; }
try { return self::trigger('engine.start'); } catch (CException $e) { mfe::stop(0xe1); } return false; } /** * Stop engine * * @return bool|null */ public static final function stopEngine() { if (!is_null(error_get_last()) && self::$_STATUS !== 0xe0) { CRunHandler::FatalErrorHandler(); } if (isset(self::$instance) || is_null(self::$instance)) { return CRunHandler::DebugHandler(); } self::trigger('engine.stop'); self::$instance = null; return true; } } /** * Auto register self in system * @standards MFS-5.5 */ !mfe::option('MFE_AUTOLOAD') or mfe::app();
/** * @param $option * @return bool|null */ protected static function option($option) { return mfe::option($option); }