]> git.openstreetmap.org Git - nominatim.git/blobdiff - lib/Phrase.php
Gives preference to special terms like postcode and housenumber
[nominatim.git] / lib / Phrase.php
index 23b9e3cab7ba0b5af1e0d37be2d0e489104d341f..b39079d94eafc38ddf11f08a1d2732053d5fd455 100644 (file)
@@ -9,7 +9,7 @@ namespace Nominatim;
  */
 class Phrase
 {
-    CONST MAX_DEPTH = 7;
+    const MAX_DEPTH = 7;
 
     // Complete phrase as a string.
     private $sPhrase;
@@ -29,16 +29,35 @@ class Phrase
         $this->aWordSets = $this->createWordSets($this->aWords, 0);
     }
 
+    /**
+     * Return the element type of the phrase.
+     *
+     * @return string Pharse type if the phrase comes from a structured query
+     *                or empty string otherwise.
+     */
     public function getPhraseType()
     {
         return $this->sPhraseType;
     }
 
+    /**
+     * Return the array of possible segmentations of the phrase.
+     *
+     * @return string[][] Array of segmentations, each consisting of an
+     *                    array of terms.
+     */
     public function getWordSets()
     {
         return $this->aWordSets;
     }
 
+    /**
+     * Add the tokens from this phrase to the given list of tokens.
+     *
+     * @param string[] $aTokens List of tokens to append.
+     *
+     * @return void
+     */
     public function addTokens(&$aTokens)
     {
         foreach ($this->aWordSets as $aSet) {
@@ -49,6 +68,11 @@ class Phrase
         }
     }
 
+    /**
+     * Invert the set of possible segmentations.
+     *
+     * @return void
+     */
     public function invertWordSets()
     {
         $this->aWordSets = $this->createInverseWordSets($this->aWords, 0);
@@ -72,7 +96,7 @@ class Phrase
         return $aResult;
     }
 
-    public function createInverseWordSets($aWords, $iDepth)
+    private function createInverseWordSets($aWords, $iDepth)
     {
         $aResult = array(array(join(' ', $aWords)));
         $sFirstToken = '';
@@ -89,4 +113,4 @@ class Phrase
 
         return $aResult;
     }
-};
+}