Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
1<?php
2/**
3 * Jingga
4 *
5 * PHP Version 8.1
6 *
7 * @package   phpOMS\Math\Number
8 * @copyright Dennis Eichhorn
9 * @license   OMS License 2.0
10 * @version   1.0.0
11 * @link      https://jingga.app
12 */
13declare(strict_types=1);
14
15namespace phpOMS\Math\Number;
16
17/**
18 * Basic operation interface.
19 *
20 * @package phpOMS\Math\Number
21 * @license OMS License 2.0
22 * @link    https://jingga.app
23 * @since   1.0.0
24 */
25interface OperationInterface
26{
27    /**
28     * Add value.
29     *
30     * @param mixed $x Value
31     *
32     * @return mixed
33     *
34     * @since 1.0.0
35     */
36    public function add(mixed $x);
37
38    /**
39     * Subtract value.
40     *
41     * @param mixed $x Value
42     *
43     * @return mixed
44     *
45     * @since 1.0.0
46     */
47    public function sub(mixed $x);
48
49    /**
50     * Right multiplicate value.
51     *
52     * @param mixed $x Value
53     *
54     * @return mixed
55     *
56     * @since 1.0.0
57     */
58    public function mult(mixed $x);
59
60    /**
61     * Right devision value.
62     *
63     * @param mixed $x Value
64     *
65     * @return mixed
66     *
67     * @since 1.0.0
68     */
69    public function div(mixed $x);
70
71    /**
72     * Power of value.
73     *
74     * @param mixed $p Power
75     *
76     * @return mixed
77     *
78     * @since 1.0.0
79     */
80    public function pow(mixed $p);
81
82    /**
83     * Abs of value.
84     *
85     * @return mixed
86     *
87     * @since 1.0.0
88     */
89    public function abs() : mixed;
90}