PHP 8.2.30
Preview: FixedExchange.php Size: 984 B
/proc/thread-self/root/home/byroehnu/easetack.com/vendor/moneyphp/money/src/Exchange/FixedExchange.php

<?php

declare(strict_types=1);

namespace Money\Exchange;

use Money\Currency;
use Money\CurrencyPair;
use Money\Exception\UnresolvableCurrencyPairException;
use Money\Exchange;

/**
 * Provides a way to get exchange rate from a static list (array).
 */
final class FixedExchange implements Exchange
{
    /** @phpstan-param array<non-empty-string, array<non-empty-string, numeric-string>> $list */
    public function __construct(private readonly array $list)
    {
    }

    public function quote(Currency $baseCurrency, Currency $counterCurrency): CurrencyPair
    {
        if (isset($this->list[$baseCurrency->getCode()][$counterCurrency->getCode()])) {
            return new CurrencyPair(
                $baseCurrency,
                $counterCurrency,
                $this->list[$baseCurrency->getCode()][$counterCurrency->getCode()]
            );
        }

        throw UnresolvableCurrencyPairException::createFromCurrencies($baseCurrency, $counterCurrency);
    }
}

Directory Contents

Dirs: 0 × Files: 6

Name Size Perms Modified Actions
1.24 KB lrw-rw-rw- 2025-04-03 08:26:36
Edit Download
984 B lrw-rw-rw- 2025-04-03 08:26:36
Edit Download
4.05 KB lrw-rw-rw- 2025-04-03 08:26:36
Edit Download
336 B lrw-rw-rw- 2025-04-03 08:26:36
Edit Download
1.22 KB lrw-rw-rw- 2025-04-03 08:26:36
Edit Download
1014 B lrw-rw-rw- 2025-04-03 08:26:36
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).