1: <?php
2: /**
3: * Mockery
4: *
5: * LICENSE
6: *
7: * This source file is subject to the new BSD license that is bundled
8: * with this package in the file LICENSE.txt.
9: * It is also available through the world-wide-web at this URL:
10: * http://github.com/padraic/mockery/blob/master/LICENSE
11: * If you did not receive a copy of the license and are unable to
12: * obtain it through the world-wide-web, please send an email
13: * to padraic@php.net so we can send you a copy immediately.
14: *
15: * @category Mockery
16: * @package Mockery
17: * @copyright Copyright (c) 2010-2014 Pádraic Brady (http://blog.astrumfutura.com)
18: * @license http://github.com/padraic/mockery/blob/master/LICENSE New BSD License
19: */
20:
21: namespace Mockery\Matcher;
22:
23: abstract class MatcherAbstract
24: {
25:
26: /**
27: * The expected value (or part thereof)
28: *
29: * @var mixed
30: */
31: protected $_expected = null;
32:
33: /**
34: * Set the expected value
35: *
36: * @param mixed $expected
37: */
38: public function __construct($expected = null)
39: {
40: $this->_expected = $expected;
41: }
42:
43: /**
44: * Check if the actual value matches the expected.
45: * Actual passed by reference to preserve reference trail (where applicable)
46: * back to the original method parameter.
47: *
48: * @param mixed $actual
49: * @return bool
50: */
51: abstract public function match(&$actual);
52:
53: /**
54: * Return a string representation of this Matcher
55: *
56: * @return string
57: */
58: abstract public function __toString();
59:
60: }
61: