1 | <?php |
||
11 | abstract class Searchable |
||
12 | { |
||
13 | |||
14 | /** |
||
15 | * Will construct a new searchable instance that is not searchable and is not regex searchable. |
||
16 | * @return NoneSearchable |
||
17 | */ |
||
18 | public static function NONE() |
||
22 | |||
23 | /** |
||
24 | * Will construct a new searchable that will allow normal searching but not regex searching. |
||
25 | * @return DefaultSearchable |
||
26 | */ |
||
27 | public static function NORMAL() |
||
31 | |||
32 | /** |
||
33 | * Will return a new searchable that will allow normal searching which also allows regex searching. |
||
34 | * @return RegexSearchable |
||
35 | */ |
||
36 | public static function REGEX() |
||
40 | |||
41 | /** |
||
42 | * Will return a new searchable that will allow for an exact match. |
||
43 | * @return ExactSearchable |
||
44 | */ |
||
45 | public static function EXACT() |
||
49 | |||
50 | /** |
||
51 | * Will return a new searchable that is not implemented. |
||
52 | * |
||
53 | * This is used for unit testing. Nothing to see here. |
||
54 | * |
||
55 | * @return NotImplementedSearchable |
||
56 | */ |
||
57 | public static function NOTIMPLEMENTED() |
||
61 | |||
62 | /** |
||
63 | * Will return if this configuration allows searching on the column. |
||
64 | * @return bool |
||
65 | */ |
||
66 | abstract public function isSearchable(); |
||
67 | } |