Code Duplication    Length = 27-28 lines in 2 locations

packages/analyzer/src/Declarations.php 1 location

@@ 63-89 (lines=27) @@
60
		}
61
	}
62
63
	public function scan_file( $root, $file_path ) {
64
		$file_path_relative = str_replace( $root, '', $file_path );
65
66
		$source = file_get_contents( $file_path );
67
		try {
68
			$ast = $this->parser->parse( $source );
69
		} catch ( Error $error ) {
70
			echo "Parse error: {$error->getMessage()}\n";
71
			return;
72
		}
73
74
		// $dumper = new NodeDumper;
75
		// echo $dumper->dump($ast) . "\n";
76
77
		$traverser    = new NodeTraverser();
78
		$nameResolver = new NameResolver();
79
		$traverser->addVisitor( $nameResolver );
80
81
		// Resolve names
82
		$ast = $traverser->traverse( $ast );
83
84
		// now scan for public methods etc
85
		$traverser           = new NodeTraverser();
86
		$declaration_visitor = new Declarations\Visitor( $file_path_relative, $this );
87
		$traverser->addVisitor( $declaration_visitor );
88
		$ast = $traverser->traverse( $ast );
89
	}
90
91
	public function load( $file_path ) {
92
		$row = 1;

packages/analyzer/src/Invocations.php 1 location

@@ 65-92 (lines=28) @@
62
	/**
63
	 * Scans the file for any invocations that depend on missing or different classes, methods, properties and functions
64
	 */
65
	public function scan_file( $root, $file_path ) {
66
		$file_path_relative = str_replace( $root, '', $file_path );
67
68
		$source = file_get_contents( $file_path );
69
		try {
70
			$ast    = $this->parser->parse( $source );
71
		} catch ( Error $error ) {
72
			echo "Parse error: {$error->getMessage()}\n";
73
			return;
74
		}
75
76
		// $dumper = new NodeDumper;
77
		// echo $dumper->dump($ast) . "\n";
78
79
		// before parsing, make sure we try to resolve class names
80
		$traverser    = new NodeTraverser();
81
		$nameResolver = new NameResolver();
82
		$traverser->addVisitor( $nameResolver );
83
84
		// Resolve names
85
		$ast = $traverser->traverse( $ast );
86
87
		$traverser         = new NodeTraverser();
88
		$invocations       = new Invocations();
89
		$invocation_finder = new Invocations\Visitor( $file_path_relative, $this );
90
		$traverser->addVisitor( $invocation_finder );
91
		$ast = $traverser->traverse( $ast );
92
	}
93
}