Laravel 4 - Clase de contenedor: función de compartir y lógica de cierre

Tengo una pregunta de seguimiento a la que se discute aquí:Laravel confusión método de núcleo

Estoy en la misma situación que driechel (el autor de la pregunta anterior) ha estado antes, actualmente me estoy acostumbrando a Laravel 4 FW y examinando el núcleo. Aunque se ha dado una respuesta precisa, todavía no entiendo la lógica y lo que está sucediendo bajo el capó. Así que agradecería mucho una explicación más detallada. Sé que esto podría ser un duplicado, pero como no puedo publicar comentarios, le daré una oportunidad con una nueva pregunta. Espero que sea así de esta manera.

He estado mirando esto desde otro ángulo a partir de este artículo:http://blog.joynag.net/2013/05/facades-in-laravel-4-and-static-methods-resolution/

Al examinar la llamadaFile:get() Finalmente termino en elClase de contenedor 'función de compartir que se llama con este parámetro realshare(function() { return new Filesystem; }.

Lo que no puedo entender es el uso de$container. Especialmente en la segunda aparición dentro del cierre:

$object = $closure($container);

¿Podría por favor aclarar esto de nuevo? Por que es$container Pasado como un parámetro aquí y lo que realmente está contenido en él? Hasta donde yo entiendo$closure En ese punto se mantiene y se ejecuta.function() { return new Filesystem; } que no tiene parámetro de entrada.

Estoy perdido. Estudié esto y las funciones / cierres anónimos de PHP ahora durante dos días seguidos y aún no puedo resolverlo. Yo tampoco entiendo la sintaxis de$closure($container) Aquí ni la lógica.

Respuestas a la pregunta(1)

Su respuesta a la pregunta