From b7e881be0a8384b417223e2245f6253f0825535c Mon Sep 17 00:00:00 2001 From: Reedy Date: Thu, 25 Nov 2021 23:33:01 +0000 Subject: [PATCH] LanguageNameSearch.php: Minor cleanup Change-Id: If031c59fee64ad6e51dedd3328aec7eca6ed0019 --- data/LanguageNameSearch.php | 51 +++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 27 deletions(-) diff --git a/data/LanguageNameSearch.php b/data/LanguageNameSearch.php index 541bec1a..2c4ef80e 100644 --- a/data/LanguageNameSearch.php +++ b/data/LanguageNameSearch.php @@ -63,13 +63,10 @@ class LanguageNameSearch { } $index = self::getIndex( $searchKey ); - $bucketsForIndex = []; - if ( isset( LanguageNameSearchData::$buckets[$index] ) ) { - $bucketsForIndex = LanguageNameSearchData::$buckets[$index]; - } + $bucketsForIndex = LanguageNameSearchData::$buckets[$index] ?? []; // types are 'prefix', 'infix' (in this order!) - foreach ( $bucketsForIndex as $bucketType => $bucket ) { + foreach ( $bucketsForIndex as $bucket ) { foreach ( $bucket as $name => $code ) { // We can skip checking languages we already have in the list if ( isset( $results[ $code ] ) ) { @@ -119,10 +116,10 @@ class LanguageNameSearch { if ( $codepoint < 4000 ) { // For latin etc. we need smaller buckets for speed return $codepoint; - } else { - // Try to group names of same script together - return $codepoint - ( $codepoint % 1000 ); } + + // Try to group names of same script together + return $codepoint - ( $codepoint % 1000 ); } /** @@ -143,27 +140,27 @@ class LanguageNameSearch { $number = $thisValue; break; - } else { - // Codepoints larger than 127 are represented by multi-byte sequences - if ( $values === [] ) { - // 224 is the lowest non-overlong-encoded codepoint. - $lookingFor = ( $thisValue < 224 ) ? 2 : 3; + } + + // Codepoints larger than 127 are represented by multi-byte sequences + if ( $values === [] ) { + // 224 is the lowest non-overlong-encoded codepoint. + $lookingFor = ( $thisValue < 224 ) ? 2 : 3; + } + + $values[] = $thisValue; + if ( count( $values ) === $lookingFor ) { + // Refer http://en.wikipedia.org/wiki/UTF-8#Description + if ( $lookingFor === 3 ) { + $number = ( $values[0] % 16 ) * 4096; + $number += ( $values[1] % 64 ) * 64; + $number += $values[2] % 64; + } else { + $number = ( $values[0] % 32 ) * 64; + $number += $values[1] % 64; } - $values[] = $thisValue; - if ( count( $values ) === $lookingFor ) { - // Refer http://en.wikipedia.org/wiki/UTF-8#Description - if ( $lookingFor === 3 ) { - $number = ( $values[0] % 16 ) * 4096; - $number += ( $values[1] % 64 ) * 64; - $number += $values[2] % 64; - } else { - $number = ( $values[0] % 32 ) * 64; - $number += $values[1] % 64; - } - - break; - } + break; } }