PluginProbe ʕ •ᴥ•ʔ
Kirki – Freeform Page Builder, Website Builder & Customizer / 6.0.13
Kirki – Freeform Page Builder, Website Builder & Customizer v6.0.13
6.1.1 6.1.0 6.0.14 6.0.13 6.0.12 6.0.11 6.0.10 6.0.9 6.0.8 6.0.7 6.0.6 6.0.5 6.0.4 6.0.3 6.0.2 6.0.1 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 4.0.19 4.0.20 4.0.21 4.0.22 4.0.23 4.0.24 4.1 4.2.0 5.0.0 5.1.0 5.1.1 5.2.0 5.2.1 5.2.2 5.2.3 6.0.0 trunk 3.0.40 3.0.41 3.0.42 3.0.43 3.0.44 3.0.45 3.1.0 3.1.1 3.1.2
kirki / libraries / framework / Contracts / Container.php
kirki / libraries / framework / Contracts Last commit date
Support 3 weeks ago Action.php 3 weeks ago Cacheable.php 3 weeks ago Capability.php 3 weeks ago CastAttribute.php 3 weeks ago Constant.php 3 weeks ago Container.php 3 weeks ago Discoverable.php 3 weeks ago Event.php 3 weeks ago Exportable.php 3 weeks ago Importable.php 3 weeks ago Middleware.php 3 weeks ago Migration.php 3 weeks ago Parser.php 3 weeks ago Registrable.php 3 weeks ago Request.php 3 weeks ago Response.php 3 weeks ago RewriteRule.php 3 weeks ago Rule.php 3 weeks ago ServiceProvider.php 3 weeks ago Shortcode.php 3 weeks ago Uploader.php 3 weeks ago
Container.php
113 lines
1 <?php
2
3 /**
4 * Defines the service container API for binding, singletons, aliases, and resolution.
5 * Mirrors container operations adapted for PHP 7.4.
6 * Implemented by Application and used wherever dependency injection is required.
7 *
8 * @package Framework
9 * @subpackage Contracts
10 * @since 1.0.0
11 */
12 namespace Kirki\Framework\Contracts;
13
14 \defined('ABSPATH') || exit;
15 use Closure;
16 interface Container
17 {
18 /**
19 * Bind a class to the container.
20 *
21 * @param string $name The name.
22 * @param Closure $resolver The resolver closure.
23 *
24 * @return void
25 *
26 * @since 1.0.0
27 */
28 public function bind(string $name, Closure $resolver);
29 /**
30 * Bind a class to the container as a singleton (lazy loaded).
31 *
32 * @param string $name The name.
33 * @param Closure $resolver The resolver closure.
34 *
35 * @return void
36 *
37 * @since 1.0.0
38 */
39 public function singleton(string $name, Closure $resolver);
40 /**
41 * Bind an existing instance to the container.
42 *
43 * @param string $name The name.
44 * @param mixed $instance The service instance.
45 *
46 * @return void
47 *
48 * @since 1.0.0
49 */
50 public function instance(string $name, $instance);
51 /**
52 * Create an alias for a service.
53 *
54 * @param string $alias The alias name.
55 * @param string $abstract The abstract service name.
56 *
57 * @return void
58 *
59 * @since 1.0.0
60 */
61 public function alias(string $alias, string $abstract);
62 /**
63 * Tag services for grouped resolution.
64 *
65 * @param array $services The services to tag.
66 * @param string $tag The tag name.
67 *
68 * @return void
69 *
70 * @since 1.0.0
71 */
72 public function tag(array $services, string $tag);
73 /**
74 * Get all services with a given tag.
75 *
76 * @param string $tag The tag name.
77 *
78 * @return array
79 *
80 * @since 1.0.0
81 */
82 public function tagged(string $tag) : array;
83 /**
84 * Make a class from the container.
85 *
86 * @param string $name The name.
87 * @param array $parameters The parameters array.
88 *
89 * @return mixed
90 *
91 * @since 1.0.0
92 */
93 public function make(string $name, array $parameters = []);
94 /**
95 * Check if a class exists in the container.
96 *
97 * @param string $name The name.
98 *
99 * @return bool
100 *
101 * @since 1.0.0
102 */
103 public function has(string $name) : bool;
104 /**
105 * Flush all bindings and instances.
106 *
107 * @return void
108 *
109 * @since 1.0.0
110 */
111 public function flush();
112 }
113