File: Float32Info.php

package info (click to toggle)
php-imagick 3.8.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 3,288 kB
  • sloc: ansic: 17,876; php: 1,440; xml: 444; pascal: 80; sh: 19; makefile: 2
file content (43 lines) | stat: -rw-r--r-- 737 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php

namespace HexFloat;

// Mirrored from https://github.com/Danack/HexFloat

class Float32Info
{
    //Sign bit: 1 bit
    private $sign;

    //Exponent: 11 bits
    private $exponent;

    //Mantissa precision: 53 bits (52 explicitly stored)
    private $mantissa;

    public function __construct(
        $sign,
        $exponent,
        $mantissa
    ) {
        // TODO - check lengths
        $this->sign = $sign;
        $this->exponent = $exponent;
        $this->mantissa = $mantissa;
    }

    public function getSign()
    {
        return $this->sign;
    }

    public function getExponent()
    {
        return $this->exponent;
    }

    public function getMantissa()
    {
        return $this->mantissa;
    }
}