]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-includes/pomo/translations.php
WordPress 4.6.3-scripts
[autoinstalls/wordpress.git] / wp-includes / pomo / translations.php
index 856e38aa10f72f78bc94555ad07b22c61b40b67d..66971d95954a9b178516642da055c5c901f27cd3 100644 (file)
@@ -2,14 +2,14 @@
 /**
  * Class for a set of entries for translation and their associated headers
  *
- * @version $Id: translations.php 718 2012-10-31 00:32:02Z nbachiyski $
+ * @version $Id: translations.php 1157 2015-11-20 04:30:11Z dd32 $
  * @package pomo
  * @subpackage translations
  */
 
 require_once dirname(__FILE__) . '/entry.php';
 
-if ( !class_exists( 'Translations' ) ):
+if ( ! class_exists( 'Translations', false ) ):
 class Translations {
        var $entries = array();
        var $headers = array();
@@ -17,7 +17,7 @@ class Translations {
        /**
         * Add entry to the PO structure
         *
-        * @param object &$entry
+        * @param array|Translation_Entry &$entry
         * @return bool true on success, false if the entry doesn't have a key
         */
        function add_entry($entry) {
@@ -30,6 +30,10 @@ class Translations {
                return true;
        }
 
+       /**
+        * @param array|Translation_Entry $entry
+        * @return bool
+        */
        function add_entry_or_merge($entry) {
                if (is_array($entry)) {
                        $entry = new Translation_Entry($entry);
@@ -57,21 +61,35 @@ class Translations {
                $this->headers[$header] = $value;
        }
 
-       function set_headers(&$headers) {
+       /**
+        * @param array $headers
+        */
+       function set_headers($headers) {
                foreach($headers as $header => $value) {
                        $this->set_header($header, $value);
                }
        }
 
+       /**
+        * @param string $header
+        */
        function get_header($header) {
                return isset($this->headers[$header])? $this->headers[$header] : false;
        }
 
+       /**
+        * @param Translation_Entry $entry
+        */
        function translate_entry(&$entry) {
                $key = $entry->key();
                return isset($this->entries[$key])? $this->entries[$key] : false;
        }
 
+       /**
+        * @param string $singular
+        * @param string $context
+        * @return string
+        */
        function translate($singular, $context=null) {
                $entry = new Translation_Entry(array('singular' => $singular, 'context' => $context));
                $translated = $this->translate_entry($entry);
@@ -93,10 +111,19 @@ class Translations {
                return 1 == $count? 0 : 1;
        }
 
+       /**
+        * @return int
+        */
        function get_plural_forms_count() {
                return 2;
        }
 
+       /**
+        * @param string $singular
+        * @param string $plural
+        * @param int    $count
+        * @param string $context
+        */
        function translate_plural($singular, $plural, $count, $context = null) {
                $entry = new Translation_Entry(array('singular' => $singular, 'plural' => $plural, 'context' => $context));
                $translated = $this->translate_entry($entry);
@@ -122,6 +149,9 @@ class Translations {
                }
        }
 
+       /**
+        * @param object $other
+        */
        function merge_originals_with(&$other) {
                foreach( $other->entries as $entry ) {
                        if ( !isset( $this->entries[$entry->key()] ) )
@@ -139,6 +169,7 @@ class Gettext_Translations extends Translations {
         * It lives in this class, because there are more than one descendand, which will use it and
         * they can't share it effectively.
         *
+        * @param int $count
         */
        function gettext_select_plural_form($count) {
                if (!isset($this->_gettext_select_plural_form) || is_null($this->_gettext_select_plural_form)) {
@@ -149,6 +180,10 @@ class Gettext_Translations extends Translations {
                return call_user_func($this->_gettext_select_plural_form, $count);
        }
 
+       /**
+        * @param string $header
+        * @return array
+        */
        function nplurals_and_expression_from_header($header) {
                if (preg_match('/^\s*nplurals\s*=\s*(\d+)\s*;\s+plural\s*=\s*(.+)$/', $header, $matches)) {
                        $nplurals = (int)$matches[1];
@@ -162,6 +197,8 @@ class Gettext_Translations extends Translations {
        /**
         * Makes a function, which will return the right translation index, according to the
         * plural forms header
+        * @param int    $nplurals
+        * @param string $expression
         */
        function make_plural_form_function($nplurals, $expression) {
                $expression = str_replace('n', '$n', $expression);
@@ -172,7 +209,7 @@ class Gettext_Translations extends Translations {
        }
 
        /**
-        * Adds parantheses to the inner parts of ternary operators in
+        * Adds parentheses to the inner parts of ternary operators in
         * plural expressions, because PHP evaluates ternary oerators from left to right
         *
         * @param string $expression the expression without parentheses
@@ -203,6 +240,10 @@ class Gettext_Translations extends Translations {
                return rtrim($res, ';');
        }
 
+       /**
+        * @param string $translation
+        * @return array
+        */
        function make_headers($translation) {
                $headers = array();
                // sometimes \ns are used instead of real new lines
@@ -216,6 +257,10 @@ class Gettext_Translations extends Translations {
                return $headers;
        }
 
+       /**
+        * @param string $header
+        * @param string $value
+        */
        function set_header($header, $value) {
                parent::set_header($header, $value);
                if ('Plural-Forms' == $header) {
@@ -227,7 +272,7 @@ class Gettext_Translations extends Translations {
 }
 endif;
 
-if ( !class_exists( 'NOOP_Translations' ) ):
+if ( ! class_exists( 'NOOP_Translations', false ) ):
 /**
  * Provides the same interface as Translations, but doesn't do anything
  */
@@ -239,36 +284,74 @@ class NOOP_Translations {
                return true;
        }
 
+       /**
+        *
+        * @param string $header
+        * @param string $value
+        */
        function set_header($header, $value) {
        }
 
-       function set_headers(&$headers) {
+       /**
+        *
+        * @param array $headers
+        */
+       function set_headers($headers) {
        }
 
+       /**
+        * @param string $header
+        * @return false
+        */
        function get_header($header) {
                return false;
        }
 
+       /**
+        * @param Translation_Entry $entry
+        * @return false
+        */
        function translate_entry(&$entry) {
                return false;
        }
 
+       /**
+        * @param string $singular
+        * @param string $context
+        */
        function translate($singular, $context=null) {
                return $singular;
        }
 
+       /**
+        *
+        * @param int $count
+        * @return bool
+        */
        function select_plural_form($count) {
                return 1 == $count? 0 : 1;
        }
 
+       /**
+        * @return int
+        */
        function get_plural_forms_count() {
                return 2;
        }
 
+       /**
+        * @param string $singular
+        * @param string $plural
+        * @param int    $count
+        * @param string $context
+        */
        function translate_plural($singular, $plural, $count, $context = null) {
                        return 1 == $count? $singular : $plural;
        }
 
+       /**
+        * @param object $other
+        */
        function merge_with(&$other) {
        }
 }