Code Duplication    Length = 7-8 lines in 2 locations

src/Rules/Relation.php 1 location

@@ 68-75 (lines=8) @@
65
            return [$query
66
                ->filter($filter_left)
67
                ->expand_relations([$this->name()])
68
                ->extract(function($e,&$r) use ($rule) {
69
                    $file = $e->property("file");
70
                    assert('$file->type() == "file"');
71
                    $r["file"] = $file->property("path");
72
                    $line = $e->property("line");
73
                    $r["line"] = $line;
74
                    $r["source"] = $file->property("source")[$line - 1];
75
                })
76
                ->expand_target()
77
                ->filter($filter_right)]
78
                ;

src/Rules/ContainText.php 1 location

@@ 109-115 (lines=7) @@
106
                    ->filter($filter_non_files)
107
                    ->expand_relations(["defined in"])
108
                    ->filter($this->regexp_source_filter($pred_factory, $regexp, true))
109
                    ->extract(function($e,&$r) use ($rule) {
110
                        $file = $e->target();
111
                        $r["file"] = $file->property("path");
112
                        $line = $e->property("start_line");
113
                        $r["line"] = $line;
114
                        $r["source"] = $file->property("source")[$line - 1];
115
                    })
116
                // TODO: add implementation for files here.
117
                ];
118
        }