public function getFunctions()
    {
        return [
            /**
             * Evaluate a rule by name.
             */
            new ExpressionFunction(
                'money',
                function () {
                    throw new RuntimeException(
                        'Function "money" can\'t be compiled.'
                    );
                },
                function (array $context, $amount, $currencyIso = null) {

                    if ($currencyIso === null) {
                        $currency = $this
                            ->defaultCurrencyWrapper
                            ->get();
                    } else {
                        /**
                         * @var CurrencyInterface $currency
                         */
                        $currency = $this
                            ->currencyRepository
                            ->findOneBy([
                                'iso' => $currencyIso,
                            ]);
                    }

                    return Money::create(
                        $amount * 100,
                        $currency
                    );
                }
            ),
        ];
    }
public function getFunctions()
    {
        return [
            /**
             * Evaluate a rule by name.
             */
            new ExpressionFunction(
                'money',
                function () {
                    throw new RuntimeException(
                        'Function "money" can\'t be compiled.'
                    );
                },
                function (array $context, $amount, $currencyIso = null) {

                    if ($currencyIso === null) {
                        $currency = $this
                            ->defaultCurrencyWrapper
                            ->get();
                    } else {
                        /**
                         * @var CurrencyInterface $currency
                         */
                        $currency = $this
                            ->currencyRepository
                            ->findOneBy([
                                'iso' => $currencyIso,
                            ]);
                    }

                    return Money::create(
                        $amount * 100,
                        $currency
                    );
                }
            ),
        ];
    }
public function getFunctions ( ) { return [ /**
             * Evaluate a rule by name.
             */ new ExpressionFunction ( 'money' , function ( ) { throw new RuntimeException ( 'Function "money" can\'t be compiled.' ) ; } , function ( array $ context , $ amount , $ currencyIso = null ) { if ( $ currencyIso === null ) { $ currency = $ this -> defaultCurrencyWrapper -> get ( ) ; } else { /**
                         * @var CurrencyInterface $currency
                         */ $ currency = $ this -> currencyRepository -> findOneBy ( [ 'iso' => $ currencyIso , ] ) ; } return Money :: create ( $ amount * 100 , $ currency ) ; } ) , ] ; }
Return functions.

@return ExpressionFunction[] An array of Function instances
Return functions .