1: <?php
2: /**
3: * The Ingo_Script_Sieve_Test:: class represents a Sieve Test.
4: *
5: * A test is a piece of code that evaluates to true or false.
6: *
7: * See the enclosed file LICENSE for license information (ASL). If you
8: * did not receive this file, see http://www.horde.org/licenses/apache.
9: *
10: * @author Mike Cochrane <mike@graftonhall.co.nz>
11: * @package Ingo
12: */
13: class Ingo_Script_Sieve_Test
14: {
15: /**
16: * Any necessary test parameters.
17: *
18: * @var array
19: */
20: protected $_vars = array();
21:
22: /**
23: * Returns a script snippet representing this rule and any sub-rules.
24: *
25: * @return string A Sieve script snippet.
26: */
27: public function toCode()
28: {
29: return 'toCode() Function Not Implemented in class ' . get_class($this);
30: }
31:
32: /**
33: * Checks if the rule parameters are valid.
34: *
35: * @return boolean|string True if this rule is valid, an error message
36: * otherwise.
37: */
38: public function check()
39: {
40: return 'check() Function Not Implemented in class ' . get_class($this);
41: }
42:
43: /**
44: * Returns a list of sieve extensions required for this rule and any
45: * sub-rules.
46: *
47: * @return array A Sieve extension list.
48: */
49: public function requires()
50: {
51: return array();
52: }
53:
54: }
55: