Added the Search API Synonym module to deal specifically with licence and license...
[yaffs-website] / vendor / symfony / dependency-injection / ParameterBag / ParameterBagInterface.php
1 <?php
2
3 /*
4  * This file is part of the Symfony package.
5  *
6  * (c) Fabien Potencier <fabien@symfony.com>
7  *
8  * For the full copyright and license information, please view the LICENSE
9  * file that was distributed with this source code.
10  */
11
12 namespace Symfony\Component\DependencyInjection\ParameterBag;
13
14 use Symfony\Component\DependencyInjection\Exception\LogicException;
15 use Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException;
16
17 /**
18  * ParameterBagInterface.
19  *
20  * @author Fabien Potencier <fabien@symfony.com>
21  */
22 interface ParameterBagInterface
23 {
24     /**
25      * Clears all parameters.
26      *
27      * @throws LogicException if the ParameterBagInterface can not be cleared
28      */
29     public function clear();
30
31     /**
32      * Adds parameters to the service container parameters.
33      *
34      * @param array $parameters An array of parameters
35      *
36      * @throws LogicException if the parameter can not be added
37      */
38     public function add(array $parameters);
39
40     /**
41      * Gets the service container parameters.
42      *
43      * @return array An array of parameters
44      */
45     public function all();
46
47     /**
48      * Gets a service container parameter.
49      *
50      * @param string $name The parameter name
51      *
52      * @return mixed The parameter value
53      *
54      * @throws ParameterNotFoundException if the parameter is not defined
55      */
56     public function get($name);
57
58     /**
59      * Removes a parameter.
60      *
61      * @param string $name The parameter name
62      */
63     public function remove($name);
64
65     /**
66      * Sets a service container parameter.
67      *
68      * @param string $name  The parameter name
69      * @param mixed  $value The parameter value
70      *
71      * @throws LogicException if the parameter can not be set
72      */
73     public function set($name, $value);
74
75     /**
76      * Returns true if a parameter name is defined.
77      *
78      * @param string $name The parameter name
79      *
80      * @return bool true if the parameter name is defined, false otherwise
81      */
82     public function has($name);
83
84     /**
85      * Replaces parameter placeholders (%name%) by their values for all parameters.
86      */
87     public function resolve();
88
89     /**
90      * Replaces parameter placeholders (%name%) by their values.
91      *
92      * @param mixed $value A value
93      *
94      * @throws ParameterNotFoundException if a placeholder references a parameter that does not exist
95      */
96     public function resolveValue($value);
97
98     /**
99      * Escape parameter placeholders %.
100      *
101      * @param mixed $value
102      *
103      * @return mixed
104      */
105     public function escapeValue($value);
106
107     /**
108      * Unescape parameter placeholders %.
109      *
110      * @param mixed $value
111      *
112      * @return mixed
113      */
114     public function unescapeValue($value);
115 }