PluginProbe ʕ •ᴥ•ʔ
Kirki – Freeform Page Builder, Website Builder & Customizer / 6.2.0
Kirki – Freeform Page Builder, Website Builder & Customizer v6.2.0
6.2.0 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 1 month ago Action.php 1 month ago Cacheable.php 1 month ago Capability.php 1 month ago CastAttribute.php 1 month ago Constant.php 1 month ago Container.php 1 month ago Discoverable.php 1 month ago Event.php 1 month ago Exportable.php 1 month ago Importable.php 1 month ago Middleware.php 1 month ago Migration.php 1 month ago Parser.php 1 month ago Registrable.php 1 month ago Request.php 5 days ago Response.php 1 month ago RewriteRule.php 1 month ago Rule.php 1 month ago ServiceProvider.php 1 month ago Shortcode.php 1 month ago SomoyInterface.php 5 days ago Uploader.php 1 month 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