:octocat: EccLevel::$level remove property getter in favor of asymmetric visibility

This commit is contained in:
smiley
2026-03-18 02:04:33 +01:00
parent 97cc453dc0
commit 6b59d01c9e
11 changed files with 17 additions and 24 deletions
+1 -1
View File
@@ -33,7 +33,7 @@ final class DecoderBenchmark extends BenchmarkAbstract{
$options = [
'version' => $this->version->getVersionNumber(),
'eccLevel' => $this->eccLevel->getLevel(),
'eccLevel' => $this->eccLevel->level,
'scale' => 2,
'imageTransparent' => false,
'outputBase64' => false,
+1 -1
View File
@@ -33,7 +33,7 @@ final class MaskPatternBenchmark extends BenchmarkAbstract{
$options = [
'version' => $this->version->getVersionNumber(),
'eccLevel' => $this->eccLevel->getLevel(),
'eccLevel' => $this->eccLevel->level,
];
$this->initQROptions($options);
+1 -1
View File
@@ -30,7 +30,7 @@ final class OutputBenchmark extends BenchmarkAbstract{
$options = [
'version' => $this->version->getVersionNumber(),
'eccLevel' => $this->eccLevel->getLevel(),
'eccLevel' => $this->eccLevel->level,
'connectPaths' => true,
'drawLightModules' => true,
'drawCircularModules' => true,
+1 -1
View File
@@ -23,7 +23,7 @@ abstract class QRCodeBenchmark extends BenchmarkAbstract{
$options = [
'version' => $this->version->getVersionNumber(),
'eccLevel' => $this->eccLevel->getLevel(),
'eccLevel' => $this->eccLevel->level,
];
$this->initQROptions($options);
+1 -1
View File
@@ -29,7 +29,7 @@ final class QRDataBenchmark extends BenchmarkAbstract{
$options = [
'version' => $this->version->getVersionNumber(),
'eccLevel' => $this->eccLevel->getLevel(),
'eccLevel' => $this->eccLevel->level,
];
$this->initQROptions($options);
+4 -11
View File
@@ -134,7 +134,7 @@ final class EccLevel{
* Q: 0b11
* H: 0b10
*/
private int $eccLevel;
private(set) int $level;
/**
* @param int $eccLevel containing the two bits encoding a QR Code's error correction level
@@ -147,7 +147,7 @@ final class EccLevel{
throw new QRCodeException('invalid ECC level');
}
$this->eccLevel = $eccLevel;
$this->level = $eccLevel;
}
/**
@@ -159,14 +159,7 @@ final class EccLevel{
self::M => 'M',
self::Q => 'Q',
self::H => 'H',
][$this->eccLevel];
}
/**
* returns the current ECC level
*/
public function getLevel():int{
return $this->eccLevel;
][$this->level];
}
/**
@@ -184,7 +177,7 @@ final class EccLevel{
self::M => 1,
self::Q => 2,
self::H => 3,
][$this->eccLevel];
][$this->level];
}
/**
+1 -1
View File
@@ -578,7 +578,7 @@ class QRMatrix{
}
// for logos, we operate in ECC H (30%) only
if($this->eccLevel->getLevel() !== EccLevel::H){
if($this->eccLevel->level !== EccLevel::H){
throw new QRCodeDataException('ECC level "H" required to add logo space');
}
+1 -1
View File
@@ -40,7 +40,7 @@ final class EccLevelTest extends TestCase{
public function getLevel():void{
$ecc = new EccLevel(EccLevel::L);
$this::assertSame(EccLevel::L, $ecc->getLevel());
$this::assertSame(EccLevel::L, $ecc->level);
}
#[Test]
+3 -3
View File
@@ -179,7 +179,7 @@ abstract class DataInterfaceTestAbstract extends TestCase{
public function maxLength(Version $version, EccLevel $eccLevel, string $str, string $str1, int $len):void{
$options = new QROptions;
$options->version = $version->getVersionNumber();
$options->eccLevel = $eccLevel->getLevel();
$options->eccLevel = $eccLevel->level;
$this->dataMode = static::getDataModeInterface($str);
$this->QRData = new QRData($options, [$this->dataMode]);
@@ -198,7 +198,7 @@ abstract class DataInterfaceTestAbstract extends TestCase{
public function getMinimumVersion(Version $version, EccLevel $eccLevel, string $str, string $str1, int $len):void{
$options = new QROptions;
$options->version = Version::AUTO;
$options->eccLevel = $eccLevel->getLevel();
$options->eccLevel = $eccLevel->level;
$this->dataMode = static::getDataModeInterface($str);
$this->QRData = new QRData($options, [$this->dataMode]);
@@ -232,7 +232,7 @@ abstract class DataInterfaceTestAbstract extends TestCase{
$options = new QROptions;
$options->version = $version->getVersionNumber();
$options->eccLevel = $eccLevel->getLevel();
$options->eccLevel = $eccLevel->level;
new QRData($options, [static::getDataModeInterface($str1)]);
+1 -1
View File
@@ -59,7 +59,7 @@ final class QRMatrixTest extends TestCase{
*/
#[Test]
public function getECC():void{
$this::assertSame(EccLevel::L, $this->matrix->eccLevel->getLevel());
$this::assertSame(EccLevel::L, $this->matrix->eccLevel->level);
}
/**
+2 -2
View File
@@ -162,7 +162,7 @@ abstract class QRCodeReaderTestAbstract extends TestCase{
public function readData(Version $version, EccLevel $ecc, string $expected):void{
$this->options->outputInterface = QRGdImagePNG::class;
$this->options->imageTransparent = false;
$this->options->eccLevel = $ecc->getLevel();
$this->options->eccLevel = $ecc->level;
$this->options->version = $version->getVersionNumber();
$this->options->outputBase64 = false;
// what's interesting is that a smaller scale seems to produce fewer reader errors???
@@ -178,7 +178,7 @@ abstract class QRCodeReaderTestAbstract extends TestCase{
$this::assertSame($expected, $result->data);
$this::assertSame($version->getVersionNumber(), $result->version->getVersionNumber());
$this::assertSame($ecc->getLevel(), $result->eccLevel->getLevel());
$this::assertSame($ecc->level, $result->eccLevel->level);
}
catch(Exception $e){
$this::markTestSkipped(sprintf('skipped version %s%s: %s', $version, $ecc, $e->getMessage()));