46 lines
2.5 KiB
HTML
46 lines
2.5 KiB
HTML
|
<pre style="font-family:Monaco, monospace; padding:2em; background-color: #111111; color: #cccccc;">
|
||
|
<?php
|
||
|
|
||
|
<span style="color: #6F8B94;">namespace</span> Illuminate\Container;
|
||
|
|
||
|
<span style="color: #6F8B94;">use</span> Closure;
|
||
|
<span style="color: #6F8B94;">use</span> ArrayAccess;
|
||
|
|
||
|
<span style="color: #374c60;">/**
|
||
|
* Theme: Keen
|
||
|
* Keen.
|
||
|
*
|
||
|
* Copyright (c) 2014 Dayle Rees
|
||
|
*/</span>
|
||
|
<span style="color: #6F8B94;">class</span> Container <span style="color: #8767b7;">implements</span> ArrayAccess
|
||
|
{
|
||
|
<span style="color: #374c60;">/**
|
||
|
* An array of the types that have been resolved.
|
||
|
*
|
||
|
* <span style="color: #56738e;">@var</span> array
|
||
|
*/</span>
|
||
|
<span style="color: #8767b7;">protected</span> <span style="color: ;">$resolved</span> <span style="color: #6F8B94;">=</span> <span style="color: #8767b7;">array</span>();
|
||
|
|
||
|
<span style="color: #374c60;">/**
|
||
|
* Determine if a given type is shared.
|
||
|
*
|
||
|
* <span style="color: #56738e;">@param</span> string $abstract
|
||
|
* <span style="color: #56738e;">@return</span> bool
|
||
|
*/</span>
|
||
|
<span style="color: #8767b7;">public</span> <span style="color: #6F8B94;">function</span> <span style="color: #b5db99;">isShared</span>(<span style="color: ;">$abstract</span>)
|
||
|
{
|
||
|
<span style="color: #6F8B94;">if</span> (<span style="color: #8767b7;">isset</span>(<span style="color: ;">$this</span><span style="color: #6F8B94;">-></span><span style="color: ;">bindings</span>[<span style="color: ;">$abstract</span>][<span style="color: #b5db99;">'shared'</span>]))
|
||
|
{
|
||
|
<span style="color: ;">$shared</span> <span style="color: #6F8B94;">=</span> <span style="color: ;">$this</span><span style="color: #6F8B94;">-></span><span style="color: ;">bindings</span>[<span style="color: ;">$abstract</span>][<span style="color: #b5db99;">'shared'</span>];
|
||
|
}
|
||
|
<span style="color: #6F8B94;">else</span>
|
||
|
{
|
||
|
<span style="color: ;">$shared</span> <span style="color: #6F8B94;">=</span> <span style="color: #8767b7;">false</span>;
|
||
|
}
|
||
|
|
||
|
<span style="color: #6F8B94;">return</span> <span style="color: #8767b7;">isset</span>(<span style="color: ;">$this</span><span style="color: #6F8B94;">-></span><span style="color: ;">instances</span>[<span style="color: ;">$abstract</span>]) <span style="color: #6F8B94;">||</span> <span style="color: ;">$shared</span> <span style="color: #6F8B94;">===</span> <span style="color: #8767b7;">true</span>;
|
||
|
}
|
||
|
|
||
|
}
|
||
|
</pre>
|