[ Index ]

PHP Cross Reference of Joomla 4.2.2 documentation

title

Body

[close]

/libraries/vendor/brick/math/src/Internal/Calculator/ -> BcMathCalculator.php (source)

   1  <?php
   2  
   3  declare(strict_types=1);
   4  
   5  namespace Brick\Math\Internal\Calculator;
   6  
   7  use Brick\Math\Internal\Calculator;
   8  
   9  /**
  10   * Calculator implementation built around the bcmath library.
  11   *
  12   * @internal
  13   *
  14   * @psalm-immutable
  15   */
  16  class BcMathCalculator extends Calculator
  17  {
  18      /**
  19       * {@inheritdoc}
  20       */
  21      public function add(string $a, string $b) : string
  22      {
  23          return \bcadd($a, $b, 0);
  24      }
  25  
  26      /**
  27       * {@inheritdoc}
  28       */
  29      public function sub(string $a, string $b) : string
  30      {
  31          return \bcsub($a, $b, 0);
  32      }
  33  
  34      /**
  35       * {@inheritdoc}
  36       */
  37      public function mul(string $a, string $b) : string
  38      {
  39          return \bcmul($a, $b, 0);
  40      }
  41  
  42      /**
  43       * {@inheritdoc}
  44       */
  45      public function divQ(string $a, string $b) : string
  46      {
  47          return \bcdiv($a, $b, 0);
  48      }
  49  
  50      /**
  51       * {@inheritdoc}
  52       */
  53      public function divR(string $a, string $b) : string
  54      {
  55          return \bcmod($a, $b);
  56      }
  57  
  58      /**
  59       * {@inheritdoc}
  60       */
  61      public function divQR(string $a, string $b) : array
  62      {
  63          $q = \bcdiv($a, $b, 0);
  64          $r = \bcmod($a, $b);
  65  
  66          return [$q, $r];
  67      }
  68  
  69      /**
  70       * {@inheritdoc}
  71       */
  72      public function pow(string $a, int $e) : string
  73      {
  74          return \bcpow($a, (string) $e, 0);
  75      }
  76  
  77      /**
  78       * {@inheritdoc}
  79       */
  80      public function modPow(string $base, string $exp, string $mod) : string
  81      {
  82          return \bcpowmod($base, $exp, $mod, 0);
  83      }
  84  
  85      /**
  86       * {@inheritDoc}
  87       */
  88      public function sqrt(string $n) : string
  89      {
  90          return \bcsqrt($n, 0);
  91      }
  92  }


Generated: Wed Sep 7 05:41:13 2022 Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer