microsoft / tolerant-php-parser
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 4% duplication:
    • 6,963 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 290 duplicated lines
  • 22 duplicates
system4% (290 lines)
Duplication per Extension
php4% (290 lines)
Duplication per Component (primary)
src4% (187 lines)
src/Node/Expression7% (33 lines)
src/Node3% (25 lines)
src/Node/Statement4% (23 lines)
experiments3% (22 lines)
php-langspec/tools0% (0 lines)
php-langspec/tools/xreference0% (0 lines)
src/Node/DelimitedList0% (0 lines)
syntax-visualizer/client0% (0 lines)
syntax-visualizer/client/src0% (0 lines)
syntax-visualizer/example0% (0 lines)
syntax-visualizer/server/src0% (0 lines)
tools0% (0 lines)
validation0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 22 duplicates...
Size#FoldersFilesLinesCode
19 x 2 src
src
Parser.php
Parser.php
633:657 (<1%)
3647:3671 (<1%)
view
17 x 2 src
src
Parser.php
Parser.php
3556:3577 (<1%)
3650:3671 (<1%)
view
17 x 2 src
src
Parser.php
Parser.php
636:657 (<1%)
3556:3577 (<1%)
view
11 x 2 src/Node
src/Node/Statement
MethodDeclaration.php
FunctionDeclaration.php
27:41 (17%)
24:38 (42%)
view
10 x 2 src
src
Parser.php
Parser.php
1965:1974 (<1%)
3870:3879 (<1%)
view
9 x 2 src
src
Parser.php
Parser.php
332:340 (<1%)
364:372 (<1%)
view
9 x 2 src/Node/Expression
src/Node
ArrowFunctionCreationExpression.php
MethodDeclaration.php
33:43 (33%)
27:37 (14%)
view
9 x 2 src
src
Parser.php
Parser.php
1123:1131 (<1%)
1215:1223 (<1%)
view
9 x 2 src/Node/Expression
src/Node/Expression
AnonymousFunctionCreationExpression.php
ArrowFunctionCreationExpression.php
23:33 (34%)
28:38 (33%)
view
9 x 2 src/Node/Expression
src/Node/Statement
ArrowFunctionCreationExpression.php
FunctionDeclaration.php
33:43 (33%)
24:34 (34%)
view
8 x 2 experiments
experiments
Lexer.php
Lexer.php
448:458 (1%)
512:521 (1%)
view
8 x 2 src
src
Parser.php
Parser.php
628:637 (<1%)
3376:3385 (<1%)
view
8 x 2 src
src
PhpTokenizer.php
TokenStringMaps.php
324:331 (2%)
126:133 (4%)
view
7 x 2 src/Node
src/Node
Parameter.php
UseVariableName.php
52:59 (19%)
21:28 (50%)
view
7 x 2 src
src
PhpTokenizer.php
TokenStringMaps.php
311:317 (2%)
114:120 (4%)
view
7 x 2 src
src
Parser.php
Parser.php
965:977 (<1%)
3351:3363 (<1%)
view
7 x 2 src
src
Parser.php
Parser.php
1159:1165 (<1%)
1952:1958 (<1%)
view
6 x 2 src/Node/Expression
src/Node/Expression
ErrorControlExpression.php
UnaryOpExpression.php
14:22 (66%)
14:22 (66%)
view
6 x 2 experiments
src
Lexer.php
PhpTokenizer.php
44:53 (1%)
50:59 (2%)
view
6 x 2 src/Node/Statement
src/Node/Statement
EnumDeclaration.php
TraitDeclaration.php
7:13 (23%)
7:13 (27%)
view
Duplicated Units
The list of top 1 duplicated units.
See data for all 1 unit duplicate
Size#FoldersFilesLinesCode
8 x 2 src/Node
src/Node
Parameter.php
UseVariableName.php
52:60 
21:29 
view