Security update for permissions_by_term
[yaffs-website] / vendor / behat / behat / src / Behat / Behat / Transformation / SimpleArgumentTransformation.php
1 <?php
2
3 /*
4  * This file is part of the Behat.
5  * (c) Konstantin Kudryashov <ever.zet@gmail.com>
6  *
7  * For the full copyright and license information, please view the LICENSE
8  * file that was distributed with this source code.
9  */
10
11 namespace Behat\Behat\Transformation;
12
13 use Behat\Behat\Definition\Call\DefinitionCall;
14 use Behat\Testwork\Call\CallCenter;
15 use ReflectionMethod;
16
17 /**
18  * Represents a simple self-contained transformation capable of changing a single argument.
19  *
20  * @author Konstantin Kudryashov <ever.zet@gmail.com>
21  */
22 interface SimpleArgumentTransformation extends Transformation
23 {
24     /**
25      * Checks if transformation supports given pattern.
26      *
27      * @param string           $pattern
28      * @param ReflectionMethod $method
29      *
30      * @return bool
31      */
32     static public function supportsPatternAndMethod($pattern, ReflectionMethod $method);
33
34     /**
35      * Returns transformation priority.
36      *
37      * @return integer
38      */
39     public function getPriority();
40
41     /**
42      * Checks if transformation supports argument.
43      *
44      * @param DefinitionCall $definitionCall
45      * @param integer|string $argumentIndex
46      * @param mixed          $argumentValue
47      *
48      * @return Boolean
49      */
50     public function supportsDefinitionAndArgument(DefinitionCall $definitionCall, $argumentIndex, $argumentValue);
51
52     /**
53      * Transforms argument value using transformation and returns a new one.
54      *
55      * @param CallCenter     $callCenter
56      * @param DefinitionCall $definitionCall
57      * @param integer|string $argumentIndex
58      * @param mixed          $argumentValue
59      *
60      * @return mixed
61      */
62     public function transformArgument(CallCenter $callCenter, DefinitionCall $definitionCall, $argumentIndex, $argumentValue);
63 }