LongIPv4AddressConverter   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 16
Duplicated Lines 0 %

Importance

Changes 3
Bugs 0 Features 0
Metric Value
eloc 7
dl 0
loc 16
rs 10
c 3
b 0
f 0
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A convert() 0 7 1
1
<?php
2
3
namespace Acamposm\IPv4AddressConverter\Converters;
4
5
use Acamposm\IPv4AddressConverter\Enums\IPAddressFormatEnum as IPAddressFormat;
6
use Acamposm\IPv4AddressConverter\Traits\MutableIPv4AddressTrait as MutableIPv4Address;
7
8
class LongIPv4AddressConverter extends BaseAddressConverter
9
{
10
    use MutableIPv4Address;
11
12
    /**
13
     * Performs the conversion from the input format to Binary string.
14
     *
15
     * @return int|string
16
     */
17
    public function convert(): int | string
18
    {
19
        return match ($this->inputFormat) {
20
            IPAddressFormat::BINARY      => $this->fromBinaryToLong($this->address),
21
            IPAddressFormat::DECIMAL     => $this->fromDecimalToLong($this->address),
22
            IPAddressFormat::HEXADECIMAL => $this->fromHexadecimalToLong($this->address),
23
            default                      => $this->address,
24
        };
25
    }
26
}
27