• File: ComposedResolver.php
  • Full Path: /home/lef/public_html/wp-content/plugins/woocommerce-multilingual/classes/Multicurrency/Resolver/ComposedResolver.php
  • File size: 547 bytes
  • MIME-type: text/x-php
  • Charset: utf-8
<?php

namespace WCML\MultiCurrency\Resolver;

use WPML\FP\Fns;
use WPML\FP\Logic;
use WPML\FP\Lst;

class ComposedResolver implements Resolver {

	/**
	 * @var callable
	 */
	private $get;

	/**
	 * @param Resolver[] $resolvers
	 */
	public function __construct( array $resolvers ) {
		$this->get = Logic::firstSatisfying(
			Logic::isNotNull(),
			Fns::map( Lst::makePair( Fns::__, 'getClientCurrency' ), $resolvers )
		);
	}

	/**
	 * @return string
	 */
	public function getClientCurrency() {
		return call_user_func( $this->get, null );
	}
}