Skip to content

Commit de27a99

Browse files
committed
🚿
1 parent 05eaf4e commit de27a99

File tree

6 files changed

+21
-19
lines changed

6 files changed

+21
-19
lines changed

src/Common/BitBuffer.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@ public function getLength():int{
9090

9191
/**
9292
* returns the buffer content
93+
*
94+
* to debug: array_map(fn($v) => sprintf('%08b', $v), $bitBuffer->getBuffer())
9395
*/
9496
public function getBuffer():array{
9597
return $this->buffer;

src/Common/Mode.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
namespace chillerlan\QRCode\Common;
1212

13-
use chillerlan\QRCode\Data\{AlphaNum, Byte, ECI, Hanzi, Kanji, Number};
13+
use chillerlan\QRCode\Data\{AlphaNum, Byte, Hanzi, Kanji, Number};
1414
use chillerlan\QRCode\QRCodeException;
1515

1616
/**

src/Decoder/Decoder.php

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -105,12 +105,17 @@ private function decodeBitStream(BitBuffer $bitBuffer):DecoderResult{
105105
if($datamode === Mode::TERMINATOR){
106106
break;
107107
}
108-
elseif($datamode === Mode::ECI){
109-
$result .= ECI::decodeSegment($this->bitBuffer, $versionNumber);
108+
elseif($datamode === Mode::NUMBER){
109+
$result .= Number::decodeSegment($this->bitBuffer, $versionNumber);
110110
}
111-
elseif($datamode === Mode::FNC1_FIRST || $datamode === Mode::FNC1_SECOND){
112-
// We do little with FNC1 except alter the parsed result a bit according to the spec
113-
$fc1InEffect = true;
111+
elseif($datamode === Mode::ALPHANUM){
112+
$result .= $this->decodeAlphanumSegment($versionNumber, $fc1InEffect);
113+
}
114+
elseif($datamode === Mode::BYTE){
115+
$result .= Byte::decodeSegment($this->bitBuffer, $versionNumber);
116+
}
117+
elseif($datamode === Mode::KANJI){
118+
$result .= Kanji::decodeSegment($this->bitBuffer, $versionNumber);
114119
}
115120
elseif($datamode === Mode::STRCTURED_APPEND){
116121

@@ -122,17 +127,12 @@ private function decodeBitStream(BitBuffer $bitBuffer):DecoderResult{
122127
$symbolSequence = $this->bitBuffer->read(8);
123128
$parityData = $this->bitBuffer->read(8);
124129
}
125-
elseif($datamode === Mode::NUMBER){
126-
$result .= Number::decodeSegment($this->bitBuffer, $versionNumber);
127-
}
128-
elseif($datamode === Mode::ALPHANUM){
129-
$result .= $this->decodeAlphanumSegment($versionNumber, $fc1InEffect);
130-
}
131-
elseif($datamode === Mode::BYTE){
132-
$result .= Byte::decodeSegment($this->bitBuffer, $versionNumber);
130+
elseif($datamode === Mode::FNC1_FIRST || $datamode === Mode::FNC1_SECOND){
131+
// We do little with FNC1 except alter the parsed result a bit according to the spec
132+
$fc1InEffect = true;
133133
}
134-
elseif($datamode === Mode::KANJI){
135-
$result .= Kanji::decodeSegment($this->bitBuffer, $versionNumber);
134+
elseif($datamode === Mode::ECI){
135+
$result .= ECI::decodeSegment($this->bitBuffer, $versionNumber);
136136
}
137137
elseif($datamode === Mode::HANZI){
138138
$result .= Hanzi::decodeSegment($this->bitBuffer, $versionNumber);

tests/Common/ECICharsetTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
use chillerlan\QRCode\QRCodeException;
1515
use PHPUnit\Framework\TestCase;
1616

17-
class ECICharsetTest extends TestCase{
17+
final class ECICharsetTest extends TestCase{
1818

1919
public static function invalidIdProvider():array{
2020
return [[-1], [1000000]];

tests/Data/HanziTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
/**
1818
* Tests the Hanzi/GB2312 class
1919
*/
20-
class HanziTest extends DataInterfaceTestAbstract{
20+
final class HanziTest extends DataInterfaceTestAbstract{
2121

2222
protected string $FQN = Hanzi::class;
2323
protected string $testdata = '无可奈何燃花作香';

tests/Data/QRDataTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
/**
2222
*
2323
*/
24-
class QRDataTest extends TestCase{
24+
final class QRDataTest extends TestCase{
2525

2626
/**
2727
* tests setting the BitBuffer object directly

0 commit comments

Comments
 (0)