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 TakeOperator implements OperatorInterface
{
/**
* @var integer
*/
private $count;
public function __construct($count)
{
if ($count < 0) {
throw new \InvalidArgumentException('Count must be >= 0');
}
$this->count = $count;
}
/**
* @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)
{
$remaining = $this->count;
$callbackObserver = new CallbackObserver(
function ($nextValue) use ($observer, &$remaining) {
if ($remaining > 0) {
$remaining--;
$observer->onNext($nextValue);
if ($remaining === 0) {
$observer->onCompleted();
}
}
},
[$observer, 'onError'],
[$observer, 'onCompleted']
);
return $observable->subscribe($callbackObserver, $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 TakeOperator implements OperatorInterface
{
/**
* @var integer
*/
private $count;
public function __construct($count)
{
if ($count < 0) {
throw new \InvalidArgumentException('Count must be >= 0');
}
$this->count = $count;
}
/**
* @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)
{
$remaining = $this->count;
$callbackObserver = new CallbackObserver(
function ($nextValue) use ($observer, &$remaining) {
if ($remaining > 0) {
$remaining--;
$observer->onNext($nextValue);
if ($remaining === 0) {
$observer->onCompleted();
}
}
},
[$observer, 'onError'],
[$observer, 'onCompleted']
);
return $observable->subscribe($callbackObserver, $scheduler);
}
}
Function Calls
None |
Stats
MD5 | a09de15b44753d8c4dbe0c893c3bf69e |
Eval Count | 0 |
Decode Time | 94 ms |