Home  >  Article  >  Backend Development  >  每天laravel-20160818| Container -21

每天laravel-20160818| Container -21

WBOY
WBOYOriginal
2016-06-20 12:27:09849browse

   /**    * Fire all of the resolving callbacks.    *    * @param  string  $abstract    * @param  mixed   $object    * @return void    */// Fire all of the resolving callbacks.   protected function fireResolvingCallbacks($abstract, $object)   {// fire Resolving Callbacks       $this->fireCallbackArray($object, $this->globalResolvingCallbacks);   // fireCallbackArray is a function,    // two parameters       $this->fireCallbackArray(           $object, $this->getCallbacksForType(               $abstract, $object, $this->resolvingCallbacks           )       );// set the fire Call back Array       $this->fireCallbackArray($object, $this->globalAfterResolvingCallbacks);      // fire two       $this->fireCallbackArray(           $object, $this->getCallbacksForType(               $abstract, $object, $this->afterResolvingCallbacks           )       );// fire third   }// this is a fire function to make it   /**    * Get all callbacks for a given type.    *    * @param  string  $abstract    * @param  object  $object    * @param  array   $callbacksPerType    *    * @return array    */// Get all callbacks for a given type.   protected function getCallbacksForType($abstract, $object, array $callbacksPerType)   {// this is abstract parameters    // object    // array call backs Per Type       $results = [];// has a array store       foreach ($callbacksPerType as $type => $callbacks) {// loop the result           if ($type === $abstract || $object instanceof $type) {               $results = array_merge($results, $callbacks);// combine the  array           }       }       return $results;   }   /**    * Fire an array of callbacks with an object.    *    * @param  mixed  $object    * @param  array  $callbacks    * @return void    */   protected function fireCallbackArray($object, array $callbacks)   {       foreach ($callbacks as $callback) {           $callback($object, $this);       }   }// fire an array callbacks with an object.   /**    * Determine if a given type is shared.    *    * @param  string  $abstract    * @return bool    */   public function isShared($abstract)// check shared status   {       $abstract = $this->normalize($abstract);// first get a normal string that i need       if (isset($this->instances[$abstract])) {           return true;       }// if it is done, ok return it       if (! isset($this->bindings[$abstract]['shared'])) {           return false;       }// if it can't be bound it       return $this->bindings[$abstract]['shared'] === true;    // if set ,get the result about shared   }   /**    * Determine if the given concrete is buildable.    *    * @param  mixed   $concrete    * @param  string  $abstract    * @return bool    */   protected function isBuildable($concrete, $abstract)   {       return $concrete === $abstract || $concrete instanceof Closure;   }// Determine if the given concrete is buildable.


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn