Merge "Reduce some code duplication"
[lhc/web/wiklou.git] / includes / parser / Preprocessor.php
index 687dceb..25b34fa 100644 (file)
@@ -28,7 +28,7 @@ interface Preprocessor {
        /**
         * Create a new preprocessor object based on an initialised Parser object
         *
-        * @param $parser Parser
+        * @param Parser $parser
         */
        function __construct( $parser );
 
@@ -40,26 +40,28 @@ interface Preprocessor {
        function newFrame();
 
        /**
-        * Create a new custom frame for programmatic use of parameter replacement as used in some extensions
+        * Create a new custom frame for programmatic use of parameter replacement
+        * as used in some extensions.
         *
-        * @param $args array
+        * @param array $args
         *
         * @return PPFrame
         */
        function newCustomFrame( $args );
 
        /**
-        * Create a new custom node for programmatic use of parameter replacement as used in some extensions
+        * Create a new custom node for programmatic use of parameter replacement
+        * as used in some extensions.
         *
-        * @param $values
+        * @param array $values
         */
        function newPartNodeArray( $values );
 
        /**
         * Preprocess text to a PPNode
         *
-        * @param $text
-        * @param $flags
+        * @param string $text
+        * @param int $flags
         *
         * @return PPNode
         */
@@ -84,14 +86,19 @@ interface PPFrame {
        /**
         * Create a child frame
         *
-        * @param array $args
-        * @param Title $title
+        * @param array|bool $args
+        * @param bool|Title $title
         * @param int $indexOffset A number subtracted from the index attributes of the arguments
         *
         * @return PPFrame
         */
        function newChild( $args = false, $title = false, $indexOffset = 0 );
 
+       /**
+        * Expand a document tree node, caching the result on its parent with the given key
+        */
+       function cachedExpand( $key, $root, $flags = 0 );
+
        /**
         * Expand a document tree node
         */
@@ -148,8 +155,7 @@ interface PPFrame {
        /**
         * Returns true if the infinite loop check is OK, false if a loop is detected
         *
-        * @param $title
-        *
+        * @param Title $title
         * @return bool
         */
        function loopCheck( $title );
@@ -205,7 +211,6 @@ interface PPNode {
         */
        function getChildrenOfType( $type );
 
-
        /**
         * Returns the length of the array, or false if this is not an array-type node
         */