示例#1
0
 static function registerErrorHandler()
 {
     $delegate = func_get_args();
     set_error_handler(array(lmbDelegate::objectify($delegate), 'invoke'));
 }
 /**
  * Invoke all delegates containing in the chain.
  * Stops invoking if delegate return a not null result
  *
  */
 function invoke()
 {
     $args = func_get_args();
     return lmbDelegate::invokeChain($this->delegates, $args);
 }
示例#3
0
 protected function _invokeListeners($type)
 {
     if (isset($this->_listeners[$type])) {
         lmbDelegate::invokeAll($this->_listeners[$type], array($this));
     }
     if (isset(self::$_global_listeners[$type])) {
         lmbDelegate::invokeAll(self::$_global_listeners[$type], array($this));
     }
 }
 function testEqual()
 {
     $s1 = new DelegateTestingStub();
     $s2 = new DelegateTestingStub();
     $d1 = new lmbDelegate($s1, 'instanceMethod');
     $d2 = new lmbDelegate($s2, 'instanceReturningMethod');
     $d3 = new lmbDelegate($s1, 'instanceMethod');
     $d4 = new lmbDelegate($s1, 'instanceReturningMethod');
     $d5 = new lmbDelegate('DelegateTestingStubFunction');
     $d6 = new lmbDelegate('DelegateTestingStubFunction');
     $this->assertFalse($d1->equal($d2));
     $this->assertTrue($d1->equal($d3));
     $this->assertFalse($d1->equal($d4));
     $this->assertFalse($d1->equal($d6));
     $this->assertTrue($d5->equal($d6));
 }