Code Duplication    Length = 50-50 lines in 2 locations

src/Code.php 1 location

@@ 319-368 (lines=50) @@
316
317
                        break;
318
319
                    case T_NAMESPACE:
320
321
                        // Определим временное пространство имен
322
                        $_namespace = '';
323
324
                        // Переберем все что иде после комманды подключения файла
325
                        for ($j = $i+1; $j < sizeof($tokens); $j++)
326
                        {
327
                            // Получим идентификатор метки и текстовое представление
328
                            $id = isset( $tokens[ $j ][0] ) ? $tokens[ $j ][0] : '';
329
                            $text = isset( $tokens[ $j ][1] ) ? $tokens[ $j ][1] : '';
330
331
                            //trace('"'.$id.'" - "'.$text.'"');
332
333
                            // Если это закрывающая скобка - прекратим собирание пути к файлу
334
                            if( $id == ')' || $id == ';' ||  $id == '{' ) break;
335
336
                            // Все пробелы игнорирую
337
                            if( $id == T_WHITESPACE ) continue;
338
339
                            // Если у метки есть текстовое представление
340
                            if( isset( $text ) )
341
                            {
342
                                // Если єто константа
343
                                if( isset( $consts[ $text ])) $_namespace .= $consts[ $text ];
344
                                // Если это путь
345
                                else $_namespace .= $text;
346
                            }
347
                        }
348
349
                        // Если найденный NS отличается от текущего - установим переход к новому NS
350
                        if( $namespace !== $_namespace )
351
                        {
352
                            // Сохраним новый как текущий
353
                            $namespace = strtolower($_namespace);
354
355
                            //trace('               #'.$i.' -> Изменили NS с '.$namespace.' на '.$_namespace);
356
357
                            // Если мы еще не создали данный NS
358
                            if( !isset($code[ $namespace ]) ) $code[ $namespace ] = array();
359
                            // Создадим уникальную коллекцию алиасов для NS
360
                            if( !isset($code[ $namespace ][ 'uses' ] ) ) $code[ $namespace ][ 'uses' ] = array();
361
                            // Установим ссылку на коллекцию алиасов
362
                            $uses = & $code[ $namespace ][ 'uses' ];
363
                        }
364
365
                        // Сместим указатель чтения файла
366
                        $i = $j;
367
368
                        break;
369
370
                    // Выделяем код подключаемых файлов
371
                    case T_REQUIRE :

src/Compressor.php 1 location

@@ 831-880 (lines=50) @@
828
829
                        break;
830
831
                    case T_NAMESPACE:
832
833
                        // Определим временное пространство имен
834
                        $_namespace = '';
835
836
                        // Переберем все что иде после комманды подключения файла
837
                        for ($j = $i + 1; $j < sizeof($tokens); $j++) {
838
                            // Получим идентификатор метки и текстовое представление
839
                            $id = isset($tokens[$j][0]) ? $tokens[$j][0] : '';
840
                            $text = isset($tokens[$j][1]) ? $tokens[$j][1] : '';
841
842
                            //trace('"'.$id.'" - "'.$text.'"');
843
844
                            // Если это закрывающая скобка - прекратим собирание пути к файлу
845
                            if ($id == ')' || $id == ';' || $id == '{') break;
846
847
                            // Все пробелы игнорирую
848
                            if ($id == T_WHITESPACE) continue;
849
850
                            // Если у метки есть текстовое представление
851
                            if (isset($text)) {
852
                                // Если єто константа
853
                                if (isset($consts[$text])) $_namespace .= $consts[$text];
854
                                // Если это путь
855
                                else $_namespace .= $text;
856
                            }
857
                        }
858
859
                        // Если найденный NS отличается от текущего - установим переход к новому NS
860
                        if ($namespace !== $_namespace) {
861
                            // Сохраним новый как текущий
862
                            $namespace = strtolower($_namespace);
863
864
                            //trace('               #'.$i.' -> Изменили NS с '.$namespace.' на '.$_namespace);
865
866
                            // Если мы еще не создали данный NS
867
                            if (!isset($code[$namespace])) $code[$namespace] = array();
868
                            // Создадим уникальную коллекцию алиасов для NS
869
                            if (!isset($code[$namespace]['uses'])) $code[$namespace]['uses'] = array();
870
                            // Установим ссылку на коллекцию алиасов
871
                            $uses = &$code[$namespace]['uses'];
872
                        }
873
874
                        // Сместим указатель чтения файла
875
                        $i = $j;
876
877
                        break;
878
879
                    // Выделяем код подключаемых файлов
880
                    case T_REQUIRE :
881
                    case T_REQUIRE_ONCE :
882
                        //case T_INCLUDE :
883
                    case T_INCLUDE_ONCE: {