PluginProbe ʕ •ᴥ•ʔ
WP 2FA – Two-factor authentication for WordPress / 2.9.0
WP 2FA – Two-factor authentication for WordPress v2.9.0
4.0.0 1.7.1 2.0.0 2.0.1 2.1.0 2.2.0 2.2.1 2.3.0 2.4.0 2.4.1 2.4.2 2.5.0 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.8.0 2.9.0 2.9.1 2.9.2 2.9.3 3.0.0 3.0.1 3.1.0 3.1.1 3.1.1.2 trunk 1.2.0 1.3.0 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 1.5.2 1.6.0 1.6.1 1.6.2 1.7.0
wp-2fa / includes / classes / bacon / bacon-qr-code / src / Common / BitUtils.php
wp-2fa / includes / classes / bacon / bacon-qr-code / src / Common Last commit date
BitArray.php 11 months ago BitMatrix.php 11 months ago BitUtils.php 11 months ago CharacterSetEci.php 11 months ago EcBlock.php 11 months ago EcBlocks.php 11 months ago ErrorCorrectionLevel.php 11 months ago FormatInformation.php 11 months ago Mode.php 11 months ago ReedSolomonCodec.php 11 months ago Version.php 11 months ago
BitUtils.php
36 lines
1 <?php
2
3 declare (strict_types=1);
4 namespace WP2FA_Vendor\BaconQrCode\Common;
5
6 /**
7 * General bit utilities.
8 *
9 * All utility methods are based on 32-bit integers and also work on 64-bit
10 * systems.
11 */
12 final class BitUtils
13 {
14 private function __construct()
15 {
16 }
17 /**
18 * Performs an unsigned right shift.
19 *
20 * This is the same as the unsigned right shift operator ">>>" in other
21 * languages.
22 */
23 public static function unsignedRightShift(int $a, int $b) : int
24 {
25 return $a >= 0 ? $a >> $b : ($a & 0x7fffffff) >> $b | 0x40000000 >> $b - 1;
26 }
27 /**
28 * Gets the number of trailing zeros.
29 */
30 public static function numberOfTrailingZeros(int $i) : int
31 {
32 $lastPos = \strrpos(\str_pad(\decbin($i), 32, '0', \STR_PAD_LEFT), '1');
33 return $lastPos === \false ? 32 : 31 - $lastPos;
34 }
35 }
36