@@ -22,53 +22,53 @@ discard block |
||
| 22 | 22 | { |
| 23 | 23 | public const VALIDATION_ERROR_COMMAND_WITHOUT_PARAMETERS = 62401; |
| 24 | 24 | |
| 25 | - /** |
|
| 26 | - * @var integer |
|
| 27 | - */ |
|
| 25 | + /** |
|
| 26 | + * @var integer |
|
| 27 | + */ |
|
| 28 | 28 | protected $searchIndex = -1; |
| 29 | 29 | |
| 30 | - /** |
|
| 31 | - * @var Mailcode_Parser_Statement_Tokenizer_Token|NULL |
|
| 32 | - */ |
|
| 30 | + /** |
|
| 31 | + * @var Mailcode_Parser_Statement_Tokenizer_Token|NULL |
|
| 32 | + */ |
|
| 33 | 33 | protected $token; |
| 34 | 34 | |
| 35 | - /** |
|
| 36 | - * Retrieves the class name of the token type to |
|
| 37 | - * limit the token search to. Only a token of this |
|
| 38 | - * type will be stored. |
|
| 39 | - * |
|
| 40 | - * @return string |
|
| 41 | - */ |
|
| 35 | + /** |
|
| 36 | + * Retrieves the class name of the token type to |
|
| 37 | + * limit the token search to. Only a token of this |
|
| 38 | + * type will be stored. |
|
| 39 | + * |
|
| 40 | + * @return string |
|
| 41 | + */ |
|
| 42 | 42 | abstract protected function getTokenClass() : string; |
| 43 | 43 | |
| 44 | - /** |
|
| 45 | - * Allows the validator to apply custom search |
|
| 46 | - * criteria to the tokens that are searched |
|
| 47 | - * through to find the target token. |
|
| 48 | - * |
|
| 49 | - * NOTE: Should return true if there are no |
|
| 50 | - * custom criteria to apply. |
|
| 51 | - * |
|
| 52 | - * @param Mailcode_Parser_Statement_Tokenizer_Token $token |
|
| 53 | - * @return bool |
|
| 54 | - */ |
|
| 44 | + /** |
|
| 45 | + * Allows the validator to apply custom search |
|
| 46 | + * criteria to the tokens that are searched |
|
| 47 | + * through to find the target token. |
|
| 48 | + * |
|
| 49 | + * NOTE: Should return true if there are no |
|
| 50 | + * custom criteria to apply. |
|
| 51 | + * |
|
| 52 | + * @param Mailcode_Parser_Statement_Tokenizer_Token $token |
|
| 53 | + * @return bool |
|
| 54 | + */ |
|
| 55 | 55 | abstract protected function _isMatch(Mailcode_Parser_Statement_Tokenizer_Token $token) : bool; |
| 56 | 56 | |
| 57 | - /** |
|
| 58 | - * @return Mailcode_Parser_Statement_Tokenizer_Token |
|
| 59 | - */ |
|
| 57 | + /** |
|
| 58 | + * @return Mailcode_Parser_Statement_Tokenizer_Token |
|
| 59 | + */ |
|
| 60 | 60 | abstract public function getToken(); |
| 61 | 61 | |
| 62 | - /** |
|
| 63 | - * Checks if the specified token matches the current |
|
| 64 | - * search criteria (index, type...). If the token is |
|
| 65 | - * a match, the `_isMatch()` method is called to allow |
|
| 66 | - * the validator class to apply some custom criteria. |
|
| 67 | - * |
|
| 68 | - * @param Mailcode_Parser_Statement_Tokenizer_Token $token |
|
| 69 | - * @param int $index |
|
| 70 | - * @return bool |
|
| 71 | - */ |
|
| 62 | + /** |
|
| 63 | + * Checks if the specified token matches the current |
|
| 64 | + * search criteria (index, type...). If the token is |
|
| 65 | + * a match, the `_isMatch()` method is called to allow |
|
| 66 | + * the validator class to apply some custom criteria. |
|
| 67 | + * |
|
| 68 | + * @param Mailcode_Parser_Statement_Tokenizer_Token $token |
|
| 69 | + * @param int $index |
|
| 70 | + * @return bool |
|
| 71 | + */ |
|
| 72 | 72 | protected function isMatch(Mailcode_Parser_Statement_Tokenizer_Token $token, int $index) : bool |
| 73 | 73 | { |
| 74 | 74 | // filter out tokens of other types |
@@ -85,13 +85,13 @@ discard block |
||
| 85 | 85 | return $this->_isMatch($token); |
| 86 | 86 | } |
| 87 | 87 | |
| 88 | - /** |
|
| 89 | - * Attempts to find a token in the statement |
|
| 90 | - * that matches the current criteria, and the |
|
| 91 | - * first one it finds is returned. |
|
| 92 | - * |
|
| 93 | - * @return Mailcode_Parser_Statement_Tokenizer_Token|NULL |
|
| 94 | - */ |
|
| 88 | + /** |
|
| 89 | + * Attempts to find a token in the statement |
|
| 90 | + * that matches the current criteria, and the |
|
| 91 | + * first one it finds is returned. |
|
| 92 | + * |
|
| 93 | + * @return Mailcode_Parser_Statement_Tokenizer_Token|NULL |
|
| 94 | + */ |
|
| 95 | 95 | protected function findToken() : ?Mailcode_Parser_Statement_Tokenizer_Token |
| 96 | 96 | { |
| 97 | 97 | $tokens = $this->params->getTokens(); |
@@ -120,14 +120,14 @@ discard block |
||
| 120 | 120 | return false; |
| 121 | 121 | } |
| 122 | 122 | |
| 123 | - /** |
|
| 124 | - * Searches for a specific token index. |
|
| 125 | - * |
|
| 126 | - * NOTE: only relevant when trying to find a single token. |
|
| 127 | - * |
|
| 128 | - * @param int $index |
|
| 129 | - * @return $this |
|
| 130 | - */ |
|
| 123 | + /** |
|
| 124 | + * Searches for a specific token index. |
|
| 125 | + * |
|
| 126 | + * NOTE: only relevant when trying to find a single token. |
|
| 127 | + * |
|
| 128 | + * @param int $index |
|
| 129 | + * @return $this |
|
| 130 | + */ |
|
| 131 | 131 | public function setIndex(int $index) : Mailcode_Parser_Statement_Validator_TokenType |
| 132 | 132 | { |
| 133 | 133 | $this->searchIndex = $index; |
@@ -22,9 +22,9 @@ |
||
| 22 | 22 | { |
| 23 | 23 | public const ERROR_NO_OPERAND_TOKEN_FOUND = 62901; |
| 24 | 24 | |
| 25 | - /** |
|
| 26 | - * @var string |
|
| 27 | - */ |
|
| 25 | + /** |
|
| 26 | + * @var string |
|
| 27 | + */ |
|
| 28 | 28 | private $sign = ''; |
| 29 | 29 | |
| 30 | 30 | protected function getTokenClass() : string |
@@ -22,10 +22,10 @@ |
||
| 22 | 22 | { |
| 23 | 23 | public const ERROR_NO_KEYWORD_TOKEN_FOUND = 62701; |
| 24 | 24 | |
| 25 | - /** |
|
| 26 | - * The name of the keyword, with ":" appended. |
|
| 27 | - * @var string |
|
| 28 | - */ |
|
| 25 | + /** |
|
| 26 | + * The name of the keyword, with ":" appended. |
|
| 27 | + * @var string |
|
| 28 | + */ |
|
| 29 | 29 | protected $keywordName; |
| 30 | 30 | |
| 31 | 31 | public function __construct(Mailcode_Parser_Statement $statement, string $keywordName) |
@@ -23,19 +23,19 @@ discard block |
||
| 23 | 23 | { |
| 24 | 24 | public const ERROR_UNHANDLED_CHARTYPE = 55601; |
| 25 | 25 | |
| 26 | - /** |
|
| 27 | - * @var string |
|
| 28 | - */ |
|
| 26 | + /** |
|
| 27 | + * @var string |
|
| 28 | + */ |
|
| 29 | 29 | private $type; |
| 30 | 30 | |
| 31 | - /** |
|
| 32 | - * @var string |
|
| 33 | - */ |
|
| 31 | + /** |
|
| 32 | + * @var string |
|
| 33 | + */ |
|
| 34 | 34 | private $char; |
| 35 | 35 | |
| 36 | - /** |
|
| 37 | - * @var string |
|
| 38 | - */ |
|
| 36 | + /** |
|
| 37 | + * @var string |
|
| 38 | + */ |
|
| 39 | 39 | private $description; |
| 40 | 40 | |
| 41 | 41 | public function __construct(string $type, string $char, string $description) |
@@ -45,46 +45,46 @@ discard block |
||
| 45 | 45 | $this->description = $description; |
| 46 | 46 | } |
| 47 | 47 | |
| 48 | - /** |
|
| 49 | - * Retrieves the format character (PHP date format). |
|
| 50 | - * |
|
| 51 | - * @return string |
|
| 52 | - */ |
|
| 48 | + /** |
|
| 49 | + * Retrieves the format character (PHP date format). |
|
| 50 | + * |
|
| 51 | + * @return string |
|
| 52 | + */ |
|
| 53 | 53 | public function getChar() : string |
| 54 | 54 | { |
| 55 | 55 | return $this->char; |
| 56 | 56 | } |
| 57 | 57 | |
| 58 | - /** |
|
| 59 | - * Retrieves a human readable description of the character's role. |
|
| 60 | - * |
|
| 61 | - * @return string |
|
| 62 | - */ |
|
| 58 | + /** |
|
| 59 | + * Retrieves a human readable description of the character's role. |
|
| 60 | + * |
|
| 61 | + * @return string |
|
| 62 | + */ |
|
| 63 | 63 | public function getDescription() : string |
| 64 | 64 | { |
| 65 | 65 | return $this->description; |
| 66 | 66 | } |
| 67 | 67 | |
| 68 | - /** |
|
| 69 | - * Retrieves the character type ID. |
|
| 70 | - * |
|
| 71 | - * @return string |
|
| 72 | - * |
|
| 73 | - * @see Mailcode_Date_FormatInfo::CHARTYPE_DATE |
|
| 74 | - * @see Mailcode_Date_FormatInfo::CHARTYPE_TIME |
|
| 75 | - * @see Mailcode_Date_FormatInfo::CHARTYPE_PUNCTUATION |
|
| 76 | - */ |
|
| 68 | + /** |
|
| 69 | + * Retrieves the character type ID. |
|
| 70 | + * |
|
| 71 | + * @return string |
|
| 72 | + * |
|
| 73 | + * @see Mailcode_Date_FormatInfo::CHARTYPE_DATE |
|
| 74 | + * @see Mailcode_Date_FormatInfo::CHARTYPE_TIME |
|
| 75 | + * @see Mailcode_Date_FormatInfo::CHARTYPE_PUNCTUATION |
|
| 76 | + */ |
|
| 77 | 77 | public function getTypeID() : string |
| 78 | 78 | { |
| 79 | 79 | return $this->type; |
| 80 | 80 | } |
| 81 | 81 | |
| 82 | - /** |
|
| 83 | - * Retrieves a human readable label for the character's type, e.g. "Date", "Time", "Punctuation". |
|
| 84 | - * |
|
| 85 | - * @throws Mailcode_Exception If the character type is unknown. |
|
| 86 | - * @return string |
|
| 87 | - */ |
|
| 82 | + /** |
|
| 83 | + * Retrieves a human readable label for the character's type, e.g. "Date", "Time", "Punctuation". |
|
| 84 | + * |
|
| 85 | + * @throws Mailcode_Exception If the character type is unknown. |
|
| 86 | + * @return string |
|
| 87 | + */ |
|
| 88 | 88 | public function getTypeLabel() : string |
| 89 | 89 | { |
| 90 | 90 | switch($this->type) |
@@ -29,39 +29,39 @@ discard block |
||
| 29 | 29 | public const VALIDATION_NO_COMMAND_CREATED = 61101; |
| 30 | 30 | public const VALIDATION_INVALID_COMMAND_CREATED = 61102; |
| 31 | 31 | |
| 32 | - /** |
|
| 33 | - * @var Mailcode_Commands_LogicKeywords |
|
| 34 | - */ |
|
| 32 | + /** |
|
| 33 | + * @var Mailcode_Commands_LogicKeywords |
|
| 34 | + */ |
|
| 35 | 35 | private $keywords; |
| 36 | 36 | |
| 37 | - /** |
|
| 38 | - * @var string |
|
| 39 | - */ |
|
| 37 | + /** |
|
| 38 | + * @var string |
|
| 39 | + */ |
|
| 40 | 40 | private $name; |
| 41 | 41 | |
| 42 | - /** |
|
| 43 | - * @var string |
|
| 44 | - */ |
|
| 42 | + /** |
|
| 43 | + * @var string |
|
| 44 | + */ |
|
| 45 | 45 | private $keywordType; |
| 46 | 46 | |
| 47 | - /** |
|
| 48 | - * @var string |
|
| 49 | - */ |
|
| 47 | + /** |
|
| 48 | + * @var string |
|
| 49 | + */ |
|
| 50 | 50 | private $matchedString; |
| 51 | 51 | |
| 52 | - /** |
|
| 53 | - * @var string |
|
| 54 | - */ |
|
| 52 | + /** |
|
| 53 | + * @var string |
|
| 54 | + */ |
|
| 55 | 55 | private $params = ''; |
| 56 | 56 | |
| 57 | - /** |
|
| 58 | - * @var boolean |
|
| 59 | - */ |
|
| 57 | + /** |
|
| 58 | + * @var boolean |
|
| 59 | + */ |
|
| 60 | 60 | private $paramsSet = false; |
| 61 | 61 | |
| 62 | - /** |
|
| 63 | - * @var Mailcode_Collection |
|
| 64 | - */ |
|
| 62 | + /** |
|
| 63 | + * @var Mailcode_Collection |
|
| 64 | + */ |
|
| 65 | 65 | private $collection; |
| 66 | 66 | |
| 67 | 67 | public function __construct(Mailcode_Commands_LogicKeywords $keywords, string $name, string $matchedString, string $type) |
@@ -72,10 +72,10 @@ discard block |
||
| 72 | 72 | $this->matchedString = $matchedString; |
| 73 | 73 | } |
| 74 | 74 | |
| 75 | - /** |
|
| 76 | - * The keyword name, e.g. "and". Always lowercase. |
|
| 77 | - * @return string |
|
| 78 | - */ |
|
| 75 | + /** |
|
| 76 | + * The keyword name, e.g. "and". Always lowercase. |
|
| 77 | + * @return string |
|
| 78 | + */ |
|
| 79 | 79 | public function getName() : string |
| 80 | 80 | { |
| 81 | 81 | return $this->name; |
@@ -98,24 +98,24 @@ discard block |
||
| 98 | 98 | return $string; |
| 99 | 99 | } |
| 100 | 100 | |
| 101 | - /** |
|
| 102 | - * The full string that was matched in the command's parameters |
|
| 103 | - * string. Examples: "and:", "and variable:"... |
|
| 104 | - * |
|
| 105 | - * @return string |
|
| 106 | - */ |
|
| 101 | + /** |
|
| 102 | + * The full string that was matched in the command's parameters |
|
| 103 | + * string. Examples: "and:", "and variable:"... |
|
| 104 | + * |
|
| 105 | + * @return string |
|
| 106 | + */ |
|
| 107 | 107 | public function getMatchedString() : string |
| 108 | 108 | { |
| 109 | 109 | return $this->matchedString; |
| 110 | 110 | } |
| 111 | 111 | |
| 112 | - /** |
|
| 113 | - * Sets the parameters string matching this logic keyword, |
|
| 114 | - * which is used to build the actual sub-command. Set by |
|
| 115 | - * the LogicKeywords class instance. |
|
| 116 | - * |
|
| 117 | - * @param string $params |
|
| 118 | - */ |
|
| 112 | + /** |
|
| 113 | + * Sets the parameters string matching this logic keyword, |
|
| 114 | + * which is used to build the actual sub-command. Set by |
|
| 115 | + * the LogicKeywords class instance. |
|
| 116 | + * |
|
| 117 | + * @param string $params |
|
| 118 | + */ |
|
| 119 | 119 | public function setParamsString(string $params) : void |
| 120 | 120 | { |
| 121 | 121 | if($this->paramsSet) |
@@ -133,13 +133,13 @@ discard block |
||
| 133 | 133 | $this->createCommand(); |
| 134 | 134 | } |
| 135 | 135 | |
| 136 | - /** |
|
| 137 | - * Retrieves the full command string used to create |
|
| 138 | - * the actual command. For opening commands like IF, |
|
| 139 | - * this includes the closing {end} command. |
|
| 140 | - * |
|
| 141 | - * @return string |
|
| 142 | - */ |
|
| 136 | + /** |
|
| 137 | + * Retrieves the full command string used to create |
|
| 138 | + * the actual command. For opening commands like IF, |
|
| 139 | + * this includes the closing {end} command. |
|
| 140 | + * |
|
| 141 | + * @return string |
|
| 142 | + */ |
|
| 143 | 143 | public function getCommandString() : string |
| 144 | 144 | { |
| 145 | 145 | $string = sprintf( |
@@ -182,12 +182,12 @@ discard block |
||
| 182 | 182 | } |
| 183 | 183 | } |
| 184 | 184 | |
| 185 | - /** |
|
| 186 | - * Retrieves the command for the keyword. |
|
| 187 | - * |
|
| 188 | - * @throws Mailcode_Exception |
|
| 189 | - * @return Mailcode_Commands_Command |
|
| 190 | - */ |
|
| 185 | + /** |
|
| 186 | + * Retrieves the command for the keyword. |
|
| 187 | + * |
|
| 188 | + * @throws Mailcode_Exception |
|
| 189 | + * @return Mailcode_Commands_Command |
|
| 190 | + */ |
|
| 191 | 191 | public function getCommand() : Mailcode_Commands_Command |
| 192 | 192 | { |
| 193 | 193 | $command = $this->collection->getFirstCommand(); |
@@ -20,9 +20,9 @@ discard block |
||
| 20 | 20 | */ |
| 21 | 21 | class Mailcode_Variables_Collection_Regular extends Mailcode_Variables_Collection |
| 22 | 22 | { |
| 23 | - /** |
|
| 24 | - * @var Mailcode_Variables_Collection_Invalid |
|
| 25 | - */ |
|
| 23 | + /** |
|
| 24 | + * @var Mailcode_Variables_Collection_Invalid |
|
| 25 | + */ |
|
| 26 | 26 | protected Mailcode_Variables_Collection_Invalid $invalid; |
| 27 | 27 | |
| 28 | 28 | protected function init() : void |
@@ -47,30 +47,30 @@ discard block |
||
| 47 | 47 | return $this; |
| 48 | 48 | } |
| 49 | 49 | |
| 50 | - /** |
|
| 51 | - * Whether any of the variables in the collection are invalid. |
|
| 52 | - * |
|
| 53 | - * @return bool |
|
| 54 | - */ |
|
| 50 | + /** |
|
| 51 | + * Whether any of the variables in the collection are invalid. |
|
| 52 | + * |
|
| 53 | + * @return bool |
|
| 54 | + */ |
|
| 55 | 55 | public function hasInvalid() : bool |
| 56 | 56 | { |
| 57 | 57 | return $this->invalid->hasVariables(); |
| 58 | 58 | } |
| 59 | 59 | |
| 60 | - /** |
|
| 61 | - * Retrieves the collection of invalid variables, if any. |
|
| 62 | - * Behaves like a variables collection. |
|
| 63 | - * |
|
| 64 | - * @return Mailcode_Variables_Collection_Invalid |
|
| 65 | - */ |
|
| 60 | + /** |
|
| 61 | + * Retrieves the collection of invalid variables, if any. |
|
| 62 | + * Behaves like a variables collection. |
|
| 63 | + * |
|
| 64 | + * @return Mailcode_Variables_Collection_Invalid |
|
| 65 | + */ |
|
| 66 | 66 | public function getInvalid() : Mailcode_Variables_Collection_Invalid |
| 67 | 67 | { |
| 68 | 68 | return $this->invalid; |
| 69 | 69 | } |
| 70 | 70 | |
| 71 | - /** |
|
| 72 | - * @return Mailcode_Variables_Collection_Regular |
|
| 73 | - */ |
|
| 71 | + /** |
|
| 72 | + * @return Mailcode_Variables_Collection_Regular |
|
| 73 | + */ |
|
| 74 | 74 | public function mergeWith(Mailcode_Variables_Collection $collection) : Mailcode_Variables_Collection |
| 75 | 75 | { |
| 76 | 76 | parent::mergeWith($collection); |
@@ -26,24 +26,24 @@ discard block |
||
| 26 | 26 | public const VALIDATION_EMPTY = 48801; |
| 27 | 27 | public const VALIDATION_UNQUOTED_STRING_LITERALS = 48802; |
| 28 | 28 | |
| 29 | - /** |
|
| 30 | - * @var string |
|
| 31 | - */ |
|
| 29 | + /** |
|
| 30 | + * @var string |
|
| 31 | + */ |
|
| 32 | 32 | protected string $statement; |
| 33 | 33 | |
| 34 | - /** |
|
| 35 | - * @var OperationResult |
|
| 36 | - */ |
|
| 34 | + /** |
|
| 35 | + * @var OperationResult |
|
| 36 | + */ |
|
| 37 | 37 | protected OperationResult $result; |
| 38 | 38 | |
| 39 | - /** |
|
| 40 | - * @var Mailcode_Parser_Statement_Tokenizer |
|
| 41 | - */ |
|
| 39 | + /** |
|
| 40 | + * @var Mailcode_Parser_Statement_Tokenizer |
|
| 41 | + */ |
|
| 42 | 42 | protected Mailcode_Parser_Statement_Tokenizer $tokenizer; |
| 43 | 43 | |
| 44 | - /** |
|
| 45 | - * @var Mailcode_Parser_Statement_Info|NULL |
|
| 46 | - */ |
|
| 44 | + /** |
|
| 45 | + * @var Mailcode_Parser_Statement_Info|NULL |
|
| 46 | + */ |
|
| 47 | 47 | protected ?Mailcode_Parser_Statement_Info $info = null; |
| 48 | 48 | |
| 49 | 49 | /** |
@@ -138,7 +138,7 @@ discard block |
||
| 138 | 138 | if($unknown) |
| 139 | 139 | { |
| 140 | 140 | $this->result->makeError( |
| 141 | - t('Unquoted string literal found:').' ('.htmlspecialchars($unknown->getMatchedText()).')', |
|
| 141 | + t('Unquoted string literal found:').' ('.htmlspecialchars($unknown->getMatchedText()).')', |
|
| 142 | 142 | self::VALIDATION_UNQUOTED_STRING_LITERALS |
| 143 | 143 | ); |
| 144 | 144 | } |
@@ -54,40 +54,40 @@ discard block |
||
| 54 | 54 | public const ERROR_NO_PLACEHOLDER_FOR_COMMAND = 47805; |
| 55 | 55 | public const ERROR_NO_FIRST_PLACEHOLDER = 47806; |
| 56 | 56 | |
| 57 | - /** |
|
| 58 | - * @var Mailcode_Parser |
|
| 59 | - */ |
|
| 57 | + /** |
|
| 58 | + * @var Mailcode_Parser |
|
| 59 | + */ |
|
| 60 | 60 | protected Mailcode_Parser $parser; |
| 61 | 61 | |
| 62 | - /** |
|
| 63 | - * @var Mailcode_Collection |
|
| 64 | - */ |
|
| 62 | + /** |
|
| 63 | + * @var Mailcode_Collection |
|
| 64 | + */ |
|
| 65 | 65 | protected Mailcode_Collection $commands; |
| 66 | 66 | |
| 67 | - /** |
|
| 68 | - * @var string |
|
| 69 | - */ |
|
| 67 | + /** |
|
| 68 | + * @var string |
|
| 69 | + */ |
|
| 70 | 70 | protected string $originalString; |
| 71 | 71 | |
| 72 | - /** |
|
| 73 | - * @var Mailcode_Collection |
|
| 74 | - */ |
|
| 72 | + /** |
|
| 73 | + * @var Mailcode_Collection |
|
| 74 | + */ |
|
| 75 | 75 | protected Mailcode_Collection $collection; |
| 76 | 76 | |
| 77 | - /** |
|
| 78 | - * Counter for the placeholders, global for all placeholders. |
|
| 79 | - * @var integer |
|
| 80 | - */ |
|
| 77 | + /** |
|
| 78 | + * Counter for the placeholders, global for all placeholders. |
|
| 79 | + * @var integer |
|
| 80 | + */ |
|
| 81 | 81 | private static int $counter = 0; |
| 82 | 82 | |
| 83 | - /** |
|
| 84 | - * @var Mailcode_Parser_Safeguard_PlaceholderCollection|NULL |
|
| 85 | - */ |
|
| 83 | + /** |
|
| 84 | + * @var Mailcode_Parser_Safeguard_PlaceholderCollection|NULL |
|
| 85 | + */ |
|
| 86 | 86 | protected ?Mailcode_Parser_Safeguard_PlaceholderCollection $placeholders = null; |
| 87 | 87 | |
| 88 | - /** |
|
| 89 | - * @var string |
|
| 90 | - */ |
|
| 88 | + /** |
|
| 89 | + * @var string |
|
| 90 | + */ |
|
| 91 | 91 | protected string $delimiter = '999'; |
| 92 | 92 | |
| 93 | 93 | public function __construct(Mailcode_Parser $parser, string $subject) |
@@ -106,28 +106,28 @@ discard block |
||
| 106 | 106 | self::$counter = 0; |
| 107 | 107 | } |
| 108 | 108 | |
| 109 | - /** |
|
| 110 | - * Retrieves the string the safeguard was created for. |
|
| 111 | - * |
|
| 112 | - * @return string |
|
| 113 | - */ |
|
| 109 | + /** |
|
| 110 | + * Retrieves the string the safeguard was created for. |
|
| 111 | + * |
|
| 112 | + * @return string |
|
| 113 | + */ |
|
| 114 | 114 | public function getOriginalString() : string |
| 115 | 115 | { |
| 116 | 116 | return $this->originalString; |
| 117 | 117 | } |
| 118 | 118 | |
| 119 | - /** |
|
| 120 | - * Sets the delimiter character sequence used to prepend |
|
| 121 | - * and append to the placeholders. |
|
| 122 | - * |
|
| 123 | - * The delimiter's default is "999". |
|
| 124 | - * |
|
| 125 | - * Minimum characters: 2 |
|
| 126 | - * Invalid characters: Any characters that get URL encoded |
|
| 127 | - * |
|
| 128 | - * @param string $delimiter |
|
| 129 | - * @return Mailcode_Parser_Safeguard |
|
| 130 | - */ |
|
| 119 | + /** |
|
| 120 | + * Sets the delimiter character sequence used to prepend |
|
| 121 | + * and append to the placeholders. |
|
| 122 | + * |
|
| 123 | + * The delimiter's default is "999". |
|
| 124 | + * |
|
| 125 | + * Minimum characters: 2 |
|
| 126 | + * Invalid characters: Any characters that get URL encoded |
|
| 127 | + * |
|
| 128 | + * @param string $delimiter |
|
| 129 | + * @return Mailcode_Parser_Safeguard |
|
| 130 | + */ |
|
| 131 | 131 | public function setDelimiter(string $delimiter) : Mailcode_Parser_Safeguard |
| 132 | 132 | { |
| 133 | 133 | $validator = new Mailcode_Parser_Safeguard_DelimiterValidator($delimiter); |
@@ -143,15 +143,15 @@ discard block |
||
| 143 | 143 | return $this->delimiter; |
| 144 | 144 | } |
| 145 | 145 | |
| 146 | - /** |
|
| 147 | - * Retrieves the safe string in which all commands have been replaced |
|
| 148 | - * by placeholder strings. |
|
| 149 | - * |
|
| 150 | - * @return string |
|
| 151 | - * @throws Mailcode_Exception |
|
| 152 | - * |
|
| 153 | - * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 154 | - */ |
|
| 146 | + /** |
|
| 147 | + * Retrieves the safe string in which all commands have been replaced |
|
| 148 | + * by placeholder strings. |
|
| 149 | + * |
|
| 150 | + * @return string |
|
| 151 | + * @throws Mailcode_Exception |
|
| 152 | + * |
|
| 153 | + * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 154 | + */ |
|
| 155 | 155 | public function makeSafe() : string |
| 156 | 156 | { |
| 157 | 157 | $this->requireValidCollection(); |
@@ -159,16 +159,16 @@ discard block |
||
| 159 | 159 | return $this->makeSafePartial(); |
| 160 | 160 | } |
| 161 | 161 | |
| 162 | - /** |
|
| 163 | - * Like makeSafe(), but allows partial (invalid) commands: use this |
|
| 164 | - * if the subject string may contain only part of the whole set of |
|
| 165 | - * commands. |
|
| 166 | - * |
|
| 167 | - * Example: parsing a text with an opening if statement, without the |
|
| 168 | - * matching end statement. |
|
| 169 | - * |
|
| 170 | - * @return string |
|
| 171 | - */ |
|
| 162 | + /** |
|
| 163 | + * Like makeSafe(), but allows partial (invalid) commands: use this |
|
| 164 | + * if the subject string may contain only part of the whole set of |
|
| 165 | + * commands. |
|
| 166 | + * |
|
| 167 | + * Example: parsing a text with an opening if statement, without the |
|
| 168 | + * matching end statement. |
|
| 169 | + * |
|
| 170 | + * @return string |
|
| 171 | + */ |
|
| 172 | 172 | public function makeSafePartial() : string |
| 173 | 173 | { |
| 174 | 174 | $placeholders = $this->getPlaceholdersCollection()->getAll(); |
@@ -218,13 +218,13 @@ discard block |
||
| 218 | 218 | $analyzer->analyze(); |
| 219 | 219 | } |
| 220 | 220 | |
| 221 | - /** |
|
| 222 | - * Creates a formatting handler, which can be used to specify |
|
| 223 | - * which formatting to use for the commands in the subject string. |
|
| 224 | - * |
|
| 225 | - * @param Mailcode_StringContainer|string $subject |
|
| 226 | - * @return Mailcode_Parser_Safeguard_Formatting |
|
| 227 | - */ |
|
| 221 | + /** |
|
| 222 | + * Creates a formatting handler, which can be used to specify |
|
| 223 | + * which formatting to use for the commands in the subject string. |
|
| 224 | + * |
|
| 225 | + * @param Mailcode_StringContainer|string $subject |
|
| 226 | + * @return Mailcode_Parser_Safeguard_Formatting |
|
| 227 | + */ |
|
| 228 | 228 | public function createFormatting($subject) : Mailcode_Parser_Safeguard_Formatting |
| 229 | 229 | { |
| 230 | 230 | if(is_string($subject)) |
@@ -249,11 +249,11 @@ discard block |
||
| 249 | 249 | } |
| 250 | 250 | |
| 251 | 251 | /** |
| 252 | - * Retrieves all placeholders that have to be added to |
|
| 253 | - * the subject text. |
|
| 254 | - * |
|
| 255 | - * @return Mailcode_Parser_Safeguard_PlaceholderCollection |
|
| 256 | - */ |
|
| 252 | + * Retrieves all placeholders that have to be added to |
|
| 253 | + * the subject text. |
|
| 254 | + * |
|
| 255 | + * @return Mailcode_Parser_Safeguard_PlaceholderCollection |
|
| 256 | + */ |
|
| 257 | 257 | public function getPlaceholdersCollection() : Mailcode_Parser_Safeguard_PlaceholderCollection |
| 258 | 258 | { |
| 259 | 259 | if(isset($this->placeholders)) |
@@ -313,16 +313,16 @@ discard block |
||
| 313 | 313 | return $formatting->toString(); |
| 314 | 314 | } |
| 315 | 315 | |
| 316 | - /** |
|
| 317 | - * Makes the string whole again after transforming or filtering it, |
|
| 318 | - * by replacing the command placeholders with the original commands. |
|
| 319 | - * |
|
| 320 | - * @param string $string |
|
| 321 | - * @return string |
|
| 322 | - * @throws Mailcode_Exception |
|
| 323 | - * |
|
| 324 | - * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 325 | - */ |
|
| 316 | + /** |
|
| 317 | + * Makes the string whole again after transforming or filtering it, |
|
| 318 | + * by replacing the command placeholders with the original commands. |
|
| 319 | + * |
|
| 320 | + * @param string $string |
|
| 321 | + * @return string |
|
| 322 | + * @throws Mailcode_Exception |
|
| 323 | + * |
|
| 324 | + * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 325 | + */ |
|
| 326 | 326 | public function makeWhole(string $string) : string |
| 327 | 327 | { |
| 328 | 328 | return $this->restore( |
@@ -332,15 +332,15 @@ discard block |
||
| 332 | 332 | ); |
| 333 | 333 | } |
| 334 | 334 | |
| 335 | - /** |
|
| 336 | - * Like `makeWhole()`, but ignores missing command placeholders. |
|
| 337 | - * |
|
| 338 | - * @param string $string |
|
| 339 | - * @return string |
|
| 340 | - * @throws Mailcode_Exception |
|
| 341 | - * |
|
| 342 | - * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 343 | - */ |
|
| 335 | + /** |
|
| 336 | + * Like `makeWhole()`, but ignores missing command placeholders. |
|
| 337 | + * |
|
| 338 | + * @param string $string |
|
| 339 | + * @return string |
|
| 340 | + * @throws Mailcode_Exception |
|
| 341 | + * |
|
| 342 | + * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 343 | + */ |
|
| 344 | 344 | public function makeWholePartial(string $string) : string |
| 345 | 345 | { |
| 346 | 346 | return $this->restore( |
@@ -350,19 +350,19 @@ discard block |
||
| 350 | 350 | ); |
| 351 | 351 | } |
| 352 | 352 | |
| 353 | - /** |
|
| 354 | - * Like `makeWhole()`, but replaces the commands with a syntax |
|
| 355 | - * highlighted version, meant for human readable texts only. |
|
| 356 | - * |
|
| 357 | - * Note: the commands lose their functionality (They cannot be |
|
| 358 | - * parsed from that string again). |
|
| 359 | - * |
|
| 360 | - * @param string $string |
|
| 361 | - * @return string |
|
| 362 | - * @throws Mailcode_Exception |
|
| 363 | - * |
|
| 364 | - * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 365 | - */ |
|
| 353 | + /** |
|
| 354 | + * Like `makeWhole()`, but replaces the commands with a syntax |
|
| 355 | + * highlighted version, meant for human readable texts only. |
|
| 356 | + * |
|
| 357 | + * Note: the commands lose their functionality (They cannot be |
|
| 358 | + * parsed from that string again). |
|
| 359 | + * |
|
| 360 | + * @param string $string |
|
| 361 | + * @return string |
|
| 362 | + * @throws Mailcode_Exception |
|
| 363 | + * |
|
| 364 | + * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 365 | + */ |
|
| 366 | 366 | public function makeHighlighted(string $string) : string |
| 367 | 367 | { |
| 368 | 368 | return $this->restore( |
@@ -372,15 +372,15 @@ discard block |
||
| 372 | 372 | ); |
| 373 | 373 | } |
| 374 | 374 | |
| 375 | - /** |
|
| 376 | - * Like `makeHighlighted()`, but ignores missing command placeholders. |
|
| 377 | - * |
|
| 378 | - * @param string $string |
|
| 379 | - * @return string |
|
| 380 | - * @throws Mailcode_Exception |
|
| 381 | - * |
|
| 382 | - * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 383 | - */ |
|
| 375 | + /** |
|
| 376 | + * Like `makeHighlighted()`, but ignores missing command placeholders. |
|
| 377 | + * |
|
| 378 | + * @param string $string |
|
| 379 | + * @return string |
|
| 380 | + * @throws Mailcode_Exception |
|
| 381 | + * |
|
| 382 | + * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 383 | + */ |
|
| 384 | 384 | public function makeHighlightedPartial(string $string) : string |
| 385 | 385 | { |
| 386 | 386 | return $this->restore( |
@@ -390,11 +390,11 @@ discard block |
||
| 390 | 390 | ); |
| 391 | 391 | } |
| 392 | 392 | |
| 393 | - /** |
|
| 394 | - * Retrieves the command collection contained in the string. |
|
| 395 | - * |
|
| 396 | - * @return Mailcode_Collection |
|
| 397 | - */ |
|
| 393 | + /** |
|
| 394 | + * Retrieves the command collection contained in the string. |
|
| 395 | + * |
|
| 396 | + * @return Mailcode_Collection |
|
| 397 | + */ |
|
| 398 | 398 | public function getCollection() : Mailcode_Collection |
| 399 | 399 | { |
| 400 | 400 | if(isset($this->collection)) |
@@ -418,11 +418,11 @@ discard block |
||
| 418 | 418 | return $this->getCollection()->isValid(); |
| 419 | 419 | } |
| 420 | 420 | |
| 421 | - /** |
|
| 422 | - * @throws Mailcode_Exception |
|
| 423 | - * |
|
| 424 | - * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 425 | - */ |
|
| 421 | + /** |
|
| 422 | + * @throws Mailcode_Exception |
|
| 423 | + * |
|
| 424 | + * @see Mailcode_Parser_Safeguard::ERROR_INVALID_COMMANDS |
|
| 425 | + */ |
|
| 426 | 426 | protected function requireValidCollection() : void |
| 427 | 427 | { |
| 428 | 428 | if($this->getCollection()->isValid()) |
@@ -445,13 +445,13 @@ discard block |
||
| 445 | 445 | throw $exception; |
| 446 | 446 | } |
| 447 | 447 | |
| 448 | - /** |
|
| 449 | - * Retrieves a list of all placeholder IDs used in the text. |
|
| 450 | - * |
|
| 451 | - * @return string[] |
|
| 452 | - * |
|
| 453 | - * @deprecated Use the placeholder collection instead {@see Mailcode_Parser_Safeguard::getPlaceholdersCollection()}. |
|
| 454 | - */ |
|
| 448 | + /** |
|
| 449 | + * Retrieves a list of all placeholder IDs used in the text. |
|
| 450 | + * |
|
| 451 | + * @return string[] |
|
| 452 | + * |
|
| 453 | + * @deprecated Use the placeholder collection instead {@see Mailcode_Parser_Safeguard::getPlaceholdersCollection()}. |
|
| 454 | + */ |
|
| 455 | 455 | public function getPlaceholderStrings() : array |
| 456 | 456 | { |
| 457 | 457 | return $this->getPlaceholdersCollection()->getStrings(); |
@@ -462,29 +462,29 @@ discard block |
||
| 462 | 462 | return $this->getPlaceholdersCollection()->isStringPlaceholder($subject); |
| 463 | 463 | } |
| 464 | 464 | |
| 465 | - /** |
|
| 466 | - * Retrieves a placeholder instance by its ID. |
|
| 467 | - * |
|
| 468 | - * @param int $id |
|
| 469 | - * @throws Mailcode_Exception If the placeholder was not found. |
|
| 470 | - * @return Mailcode_Parser_Safeguard_Placeholder |
|
| 471 | - * |
|
| 472 | - * @deprecated Use the placeholder collection instead {@see Mailcode_Parser_Safeguard::getPlaceholdersCollection()}. |
|
| 473 | - */ |
|
| 465 | + /** |
|
| 466 | + * Retrieves a placeholder instance by its ID. |
|
| 467 | + * |
|
| 468 | + * @param int $id |
|
| 469 | + * @throws Mailcode_Exception If the placeholder was not found. |
|
| 470 | + * @return Mailcode_Parser_Safeguard_Placeholder |
|
| 471 | + * |
|
| 472 | + * @deprecated Use the placeholder collection instead {@see Mailcode_Parser_Safeguard::getPlaceholdersCollection()}. |
|
| 473 | + */ |
|
| 474 | 474 | public function getPlaceholderByID(int $id) : Mailcode_Parser_Safeguard_Placeholder |
| 475 | 475 | { |
| 476 | 476 | return $this->getPlaceholdersCollection()->getByID($id); |
| 477 | 477 | } |
| 478 | 478 | |
| 479 | - /** |
|
| 480 | - * Retrieves a placeholder instance by its replacement text. |
|
| 481 | - * |
|
| 482 | - * @param string $string |
|
| 483 | - * @throws Mailcode_Exception |
|
| 484 | - * @return Mailcode_Parser_Safeguard_Placeholder |
|
| 485 | - * |
|
| 486 | - * @deprecated Use the placeholder collection instead {@see Mailcode_Parser_Safeguard::getPlaceholdersCollection()}. |
|
| 487 | - */ |
|
| 479 | + /** |
|
| 480 | + * Retrieves a placeholder instance by its replacement text. |
|
| 481 | + * |
|
| 482 | + * @param string $string |
|
| 483 | + * @throws Mailcode_Exception |
|
| 484 | + * @return Mailcode_Parser_Safeguard_Placeholder |
|
| 485 | + * |
|
| 486 | + * @deprecated Use the placeholder collection instead {@see Mailcode_Parser_Safeguard::getPlaceholdersCollection()}. |
|
| 487 | + */ |
|
| 488 | 488 | public function getPlaceholderByString(string $string) : Mailcode_Parser_Safeguard_Placeholder |
| 489 | 489 | { |
| 490 | 490 | return $this->getPlaceholdersCollection()->getByString($string); |
@@ -24,34 +24,34 @@ discard block |
||
| 24 | 24 | { |
| 25 | 25 | public const ERROR_PLACEHOLDER_NOT_FOUND = 66001; |
| 26 | 26 | |
| 27 | - /** |
|
| 28 | - * @var Mailcode_Parser_Safeguard_Formatter |
|
| 29 | - */ |
|
| 27 | + /** |
|
| 28 | + * @var Mailcode_Parser_Safeguard_Formatter |
|
| 29 | + */ |
|
| 30 | 30 | protected $formatter; |
| 31 | 31 | |
| 32 | - /** |
|
| 33 | - * @var string |
|
| 34 | - */ |
|
| 32 | + /** |
|
| 33 | + * @var string |
|
| 34 | + */ |
|
| 35 | 35 | protected $append = ''; |
| 36 | 36 | |
| 37 | - /** |
|
| 38 | - * @var string |
|
| 39 | - */ |
|
| 37 | + /** |
|
| 38 | + * @var string |
|
| 39 | + */ |
|
| 40 | 40 | protected $prepend = ''; |
| 41 | 41 | |
| 42 | - /** |
|
| 43 | - * @var Mailcode_Parser_Safeguard_Placeholder |
|
| 44 | - */ |
|
| 42 | + /** |
|
| 43 | + * @var Mailcode_Parser_Safeguard_Placeholder |
|
| 44 | + */ |
|
| 45 | 45 | protected $placeholder; |
| 46 | 46 | |
| 47 | - /** |
|
| 48 | - * @var Mailcode_StringContainer |
|
| 49 | - */ |
|
| 47 | + /** |
|
| 48 | + * @var Mailcode_StringContainer |
|
| 49 | + */ |
|
| 50 | 50 | protected $subject; |
| 51 | 51 | |
| 52 | - /** |
|
| 53 | - * @var string[] |
|
| 54 | - */ |
|
| 52 | + /** |
|
| 53 | + * @var string[] |
|
| 54 | + */ |
|
| 55 | 55 | protected $log = array(); |
| 56 | 56 | |
| 57 | 57 | public function __construct(Mailcode_Parser_Safeguard_Formatter $formatter, Mailcode_Parser_Safeguard_Placeholder $placeholder) |
@@ -67,22 +67,22 @@ discard block |
||
| 67 | 67 | |
| 68 | 68 | abstract public function requiresAdjustment() : bool; |
| 69 | 69 | |
| 70 | - /** |
|
| 71 | - * @return int|boolean |
|
| 72 | - */ |
|
| 70 | + /** |
|
| 71 | + * @return int|boolean |
|
| 72 | + */ |
|
| 73 | 73 | public function getStartPosition() |
| 74 | 74 | { |
| 75 | 75 | return $this->subject->getSubstrPosition($this->placeholder->getReplacementText()); |
| 76 | 76 | } |
| 77 | 77 | |
| 78 | - /** |
|
| 79 | - * Checks whether the specified position within the string |
|
| 80 | - * is within another command's placeholder (excluding this |
|
| 81 | - * location's placeholder). |
|
| 82 | - * |
|
| 83 | - * @param int $position |
|
| 84 | - * @return bool |
|
| 85 | - */ |
|
| 78 | + /** |
|
| 79 | + * Checks whether the specified position within the string |
|
| 80 | + * is within another command's placeholder (excluding this |
|
| 81 | + * location's placeholder). |
|
| 82 | + * |
|
| 83 | + * @param int $position |
|
| 84 | + * @return bool |
|
| 85 | + */ |
|
| 86 | 86 | public function isWithinCommand(int $position) : bool |
| 87 | 87 | { |
| 88 | 88 | $placeholders = $this->formatter->getSafeguard()->getPlaceholdersCollection()->getAll(); |
@@ -114,9 +114,9 @@ discard block |
||
| 114 | 114 | return false; |
| 115 | 115 | } |
| 116 | 116 | |
| 117 | - /** |
|
| 118 | - * @return int|boolean |
|
| 119 | - */ |
|
| 117 | + /** |
|
| 118 | + * @return int|boolean |
|
| 119 | + */ |
|
| 120 | 120 | public function getEndPosition() |
| 121 | 121 | { |
| 122 | 122 | $start = $this->getStartPosition(); |
@@ -139,14 +139,14 @@ discard block |
||
| 139 | 139 | return $this->placeholder; |
| 140 | 140 | } |
| 141 | 141 | |
| 142 | - /** |
|
| 143 | - * Replaces the placeholder with the specified replacement text. |
|
| 144 | - * |
|
| 145 | - * @param string $replacementText |
|
| 146 | - * @throws Mailcode_Exception |
|
| 147 | - * |
|
| 148 | - * @see Mailcode_Parser_Safeguard_Formatter_Location::ERROR_PLACEHOLDER_NOT_FOUND |
|
| 149 | - */ |
|
| 142 | + /** |
|
| 143 | + * Replaces the placeholder with the specified replacement text. |
|
| 144 | + * |
|
| 145 | + * @param string $replacementText |
|
| 146 | + * @throws Mailcode_Exception |
|
| 147 | + * |
|
| 148 | + * @see Mailcode_Parser_Safeguard_Formatter_Location::ERROR_PLACEHOLDER_NOT_FOUND |
|
| 149 | + */ |
|
| 150 | 150 | public function replaceWith(string $replacementText) : void |
| 151 | 151 | { |
| 152 | 152 | $needle = $this->placeholder->getReplacementText(); |
@@ -196,10 +196,10 @@ discard block |
||
| 196 | 196 | ); |
| 197 | 197 | } |
| 198 | 198 | |
| 199 | - /** |
|
| 200 | - * Retrieves the location's log messages, if any. |
|
| 201 | - * @return string[] |
|
| 202 | - */ |
|
| 199 | + /** |
|
| 200 | + * Retrieves the location's log messages, if any. |
|
| 201 | + * @return string[] |
|
| 202 | + */ |
|
| 203 | 203 | public function getLog() : array |
| 204 | 204 | { |
| 205 | 205 | return $this->log; |