* @ingroup Parser
*/
class MagicWord {
- /**#@+
- * @private
- */
- var $mId, $mSynonyms, $mCaseSensitive;
- var $mRegex = '';
- var $mRegexStart = '';
- var $mRegexStartToEnd = '';
- var $mBaseRegex = '';
- var $mVariableRegex = '';
- var $mVariableStartToEndRegex = '';
- var $mModified = false;
- var $mFound = false;
+ /**#@-*/
+
+ /** @var int */
+ public $mId;
+
+ /** @var array */
+ public $mSynonyms;
+
+ /** @var bool */
+ public $mCaseSensitive;
+
+ /** @var string */
+ private $mRegex = '';
+
+ /** @var string */
+ private $mRegexStart = '';
+
+ /** @var string */
+ private $mRegexStartToEnd = '';
+
+ /** @var string */
+ private $mBaseRegex = '';
+
+ /** @var string */
+ private $mVariableRegex = '';
+
+ /** @var string */
+ private $mVariableStartToEndRegex = '';
+
+ /** @var bool */
+ private $mModified = false;
+
+ /** @var bool */
+ private $mFound = false;
static public $mVariableIDsInitialised = false;
static public $mVariableIDs = array(
'numberofadmins' => 3600,
'numberofviews' => 3600,
'numberingroup' => 3600,
- );
+ );
static public $mDoubleUnderscoreIDs = array(
'notoc',
/**
* Factory: creates an object representing an ID
*
- * @param $id
+ * @param int $id
*
* @return MagicWord
*/
/**
* Allow external reads of TTL array
*
- * @param $id int
- * @return array
+ * @param int $id
+ * @return int
*/
static function getCacheTTL( $id ) {
if ( array_key_exists( $id, self::$mCacheTTLs ) ) {
/**
* Initialises this object with an ID
*
- * @param $id
+ * @param int $id
* @throws MWException
*/
function load( $id ) {
* first string is longer, the same length or shorter than the second
* string.
*
- * @param $s1 string
- * @param $s2 string
+ * @param string $s1
+ * @param string $s2
*
* @return int
*/
/**
* Returns true if the text contains the word
*
- * @param $text string
+ * @param string $text
*
* @return bool
*/
/**
* Returns true if the text starts with the word
*
- * @param $text string
+ * @param string $text
*
* @return bool
*/
/**
* Returns true if the text matched the word
*
- * @param $text string
+ * @param string $text
*
* @return bool
* @since 1.23
* part in the regex and the matched variable part ($1) if there
* is one.
*
- * @param $text string
+ * @param string $text
*
* @return string
*/
* Returns true if the text matches the word, and alters the
* input string, removing all instances of the word
*
- * @param $text string
+ * @param string $text
*
* @return bool
*/
function matchAndRemove( &$text ) {
$this->mFound = false;
- $text = preg_replace_callback( $this->getRegex(), array( &$this, 'pregRemoveAndRecord' ), $text );
+ $text = preg_replace_callback(
+ $this->getRegex(),
+ array( &$this, 'pregRemoveAndRecord' ),
+ $text
+ );
+
return $this->mFound;
}
/**
- * @param $text
+ * @param string $text
* @return bool
*/
function matchStartAndRemove( &$text ) {
$this->mFound = false;
- $text = preg_replace_callback( $this->getRegexStart(), array( &$this, 'pregRemoveAndRecord' ), $text );
+ $text = preg_replace_callback(
+ $this->getRegexStart(),
+ array( &$this, 'pregRemoveAndRecord' ),
+ $text
+ );
+
return $this->mFound;
}
/**
* Replaces the word with something else
*
- * @param $replacement
- * @param $subject
- * @param $limit int
+ * @param string $replacement
+ * @param string $subject
+ * @param int $limit
*
* @return string
*/
function replace( $replacement, $subject, $limit = -1 ) {
- $res = preg_replace( $this->getRegex(), StringUtils::escapeRegexReplacement( $replacement ), $subject, $limit );
+ $res = preg_replace(
+ $this->getRegex(),
+ StringUtils::escapeRegexReplacement( $replacement ),
+ $subject,
+ $limit
+ );
$this->mModified = $res !== $subject;
return $res;
}
* Calls back a function to determine what to replace xxx with
* Input word must contain $1
*
- * @param $text string
- * @param $callback
+ * @param string $text
+ * @param callable $callback
*
* @return string
*/
/**
* Accesses the synonym list directly
*
- * @param $i int
+ * @param int $i
*
* @return string
*/
* $result. The return value is true if something was replaced.
* @todo Should this be static? It doesn't seem to be used at all
*
- * @param $magicarr
- * @param $subject
- * @param $result
+ * @param array $magicarr
+ * @param string $subject
+ * @param string $result
*
* @return bool
*/
* Adds all the synonyms of this MagicWord to an array, to allow quick
* lookup in a list of magic words
*
- * @param $array
- * @param $value
+ * @param array $array
+ * @param string $value
*/
function addToArray( &$array, $value ) {
global $wgContLang;
* @ingroup Parser
*/
class MagicWordArray {
- var $names = array();
- var $hash;
- var $baseRegex, $regex;
- var $matches;
+ /** @var array */
+ public $names = array();
+
+ /** @var array */
+ private $hash;
+
+ private $baseRegex;
+
+ private $regex;
+
+ /** @todo Unused? */
+ private $matches;
/**
- * @param $names array
+ * @param array $names
*/
function __construct( $names = array() ) {
$this->names = $names;
/**
* Add a magic word by name
*
- * @param $name string
+ * @param string $name
*/
public function add( $name ) {
$this->names[] = $name;
/**
* Add a number of magic words by name
*
- * @param $names array
+ * @param array $names
*/
public function addArray( $names ) {
$this->names = array_merge( $this->names, array_values( $names ) );
* Returns array(magic word ID, parameter value)
* If there is no parameter value, that element will be false.
*
- * @param $m array
+ * @param array $m
*
* @throws MWException
* @return array
* parameter in the second element.
* Both elements are false if there was no match.
*
- * @param $text string
+ * @param string $text
*
* @return array
*/
* Match some text, without parameter capture
* Returns the magic word name, or false if there was no capture
*
- * @param $text string
+ * @param string $text
*
* @return string|bool False on failure
*/
* Returns an associative array, ID => param value, for all items that match
* Removes the matched items from the input string (passed by reference)
*
- * @param $text string
+ * @param string $text
*
* @return array
*/
* Return false if no match found and $text is not modified.
* Does not match parameters.
*
- * @param $text string
+ * @param string $text
*
* @return int|bool False on failure
*/