Passed
Push — GlobeCoordinateParser ( 7d8c3a )
by Jeroen De
02:26
created

PrecisionParser::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 4
c 0
b 0
f 0
ccs 0
cts 4
cp 0
rs 10
cc 1
nc 1
nop 2
crap 2
1
<?php
2
3
namespace DataValues\Geo\PackagePrivate;
4
5
use DataValues\Geo\Values\LatLongPrecision;
6
use ValueParsers\ValueParser;
7
8
class PrecisionParser {
9
10
	private $latLongParser;
11
	private $precisionDetector;
12
13
	public function __construct( ValueParser $latLongParser, PrecisionDetector $precisionDetector ) {
14
		$this->latLongParser = $latLongParser;
15
		$this->precisionDetector = $precisionDetector;
16
	}
17
18
	public function parse( string $coordinate ): LatLongPrecision {
19
		$latLong = $this->latLongParser->parse( $coordinate );
20
21
		return new LatLongPrecision(
22
			$latLong,
23
			$this->precisionDetector->detectPrecision( $latLong )
24
		);
25
	}
26
27
}
28