Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php namespace Rx\Operator; use Rx\ObservableInterface; use Rx\Observer\CallbackObserve..
Decoded Output download
<?php
namespace Rx\Operator;
use Rx\ObservableInterface;
use Rx\Observer\CallbackObserver;
use Rx\ObserverInterface;
use Rx\SchedulerInterface;
/**
* Class FilterOperator
* @package Rx\Operator
*/
class FilterOperator implements OperatorInterface
{
/** @var callable */
private $predicate;
/**
* FilterOperator constructor.
* @param callable $predicate
*/
public function __construct(callable $predicate)
{
$this->predicate = $predicate;
}
/**
* @param \Rx\ObservableInterface $observable
* @param \Rx\ObserverInterface $observer
* @param \Rx\SchedulerInterface $scheduler
* @return \Rx\DisposableInterface
*/
public function __invoke(ObservableInterface $observable, ObserverInterface $observer, SchedulerInterface $scheduler = null)
{
$selectObserver = new CallbackObserver(
function ($nextValue) use ($observer) {
$shouldFire = false;
try {
$shouldFire = call_user_func($this->predicate, $nextValue);
} catch (\Exception $e) {
$observer->onError($e);
}
if ($shouldFire) {
$observer->onNext($nextValue);
}
},
[$observer, 'onError'],
[$observer, 'onCompleted']
);
return $observable->subscribe($selectObserver, $scheduler);
}
}
?>
Did this file decode correctly?
Original Code
<?php
namespace Rx\Operator;
use Rx\ObservableInterface;
use Rx\Observer\CallbackObserver;
use Rx\ObserverInterface;
use Rx\SchedulerInterface;
/**
* Class FilterOperator
* @package Rx\Operator
*/
class FilterOperator implements OperatorInterface
{
/** @var callable */
private $predicate;
/**
* FilterOperator constructor.
* @param callable $predicate
*/
public function __construct(callable $predicate)
{
$this->predicate = $predicate;
}
/**
* @param \Rx\ObservableInterface $observable
* @param \Rx\ObserverInterface $observer
* @param \Rx\SchedulerInterface $scheduler
* @return \Rx\DisposableInterface
*/
public function __invoke(ObservableInterface $observable, ObserverInterface $observer, SchedulerInterface $scheduler = null)
{
$selectObserver = new CallbackObserver(
function ($nextValue) use ($observer) {
$shouldFire = false;
try {
$shouldFire = call_user_func($this->predicate, $nextValue);
} catch (\Exception $e) {
$observer->onError($e);
}
if ($shouldFire) {
$observer->onNext($nextValue);
}
},
[$observer, 'onError'],
[$observer, 'onCompleted']
);
return $observable->subscribe($selectObserver, $scheduler);
}
}
Function Calls
None |
Stats
MD5 | 986f0b1591d97f134eef3eeba931983e |
Eval Count | 0 |
Decode Time | 101 ms |