public function test() { C1::__invoke(0, 1); D1::__invoke(0, 1); E1::__invoke(0, 1); call_user_func(mk('C1'), 0, 1); call_user_func(mk('D1'), 0, 1); call_user_func(mk('E1'), 0, 1); }
<?php require_once $GLOBALS['HACKLIB_ROOT']; final class E1 { private function __construct() { } private static $hacklib_values = array('Fly' => "15", 'Blue' => 12, 'Red' => 16, 'Green' => "green"); use \HH\HACKLIB_ENUM_LIKE; const Fly = "15"; const Blue = 12; const Red = 16; const Green = "green"; } var_dump(E1::getNames()); final class E2 { private function __construct() { } private static $hacklib_values = array('Fly' => "15", 'Blue' => 12, 'Red' => 15, 'Green' => "green"); use \HH\HACKLIB_ENUM_LIKE; const Fly = "15"; const Blue = 12; const Red = 15; const Green = "green"; } try { E2::getNames(); } catch (HH\InvariantException $e) {
$t = gettype($i); echo "({$t}) : {$i}\n"; } final class E1 { private function __construct() { } private static $hacklib_values = array('Blue' => 12, 'Red' => 15); use \HH\HACKLIB_ENUM_LIKE; const Blue = 12; const Red = 15; } echo "\nE1:\n"; display(E1::assert(12)); display(E1::assert(15)); final class E2 { private function __construct() { } private static $hacklib_values = array('Fly' => "15", 'Blue' => 12, 'Red' => 15, 'Green' => "green"); use \HH\HACKLIB_ENUM_LIKE; const Fly = "15"; const Blue = 12; const Red = 15; const Green = "green"; } echo "\nE2:\n"; display(E2::assert(12)); display(E2::assert("12"));
$t = gettype($i); echo "({$t}) : {$i}\n"; } final class E1 { private function __construct() { } private static $hacklib_values = array('Blue' => 12, 'Red' => 15); use \HH\HACKLIB_ENUM_LIKE; const Blue = 12; const Red = 15; } echo "\nE1:\n"; display(E1::coerce(12)); display(E1::coerce(15)); final class E2 { private function __construct() { } private static $hacklib_values = array('Fly' => "15", 'Blue' => 12, 'Red' => 15, 'Green' => "green"); use \HH\HACKLIB_ENUM_LIKE; const Fly = "15"; const Blue = 12; const Red = 15; const Green = "green"; } echo "\nE2:\n"; display(E2::coerce(12)); display(E2::coerce("12"));
*/ class D1 { private function foo() { echo "D1::foo " . (isset($this) ? "true\n" : "false\n"); } public function test() { D1::foo(); } } class E1 extends D1 { } $e1 = new E1(); $e1->test(); // Outputs 'D1:foo true' class D2 { private function foo() { echo "D2::foo " . (isset($this) ? "true\n" : "false\n"); } public function test() { F2::foo(); } } class E2 extends D2 {
<?php require_once $GLOBALS['HACKLIB_ROOT']; final class E1 { private function __construct() { } private static $hacklib_values = array('Fly' => "15", 'Blue' => 12, 'Red' => 16, 'Green' => "green"); use \HH\HACKLIB_ENUM_LIKE; const Fly = "15"; const Blue = 12; const Red = 16; const Green = "green"; } var_dump(E1::getValues()); final class E2 { private function __construct() { } private static $hacklib_values = array('Fly' => "15", 'Blue' => 12, 'Red' => 15, 'Green' => "green"); use \HH\HACKLIB_ENUM_LIKE; const Fly = "15"; const Blue = 12; const Red = 15; const Green = "green"; } var_dump(E2::getValues());
function main1() { $e1 = new E1(); $e1->test(); // Outputs 'D1:foo true' }
public function __invoke($a0) { return $a0 > 10; } } $c = new C1(); $d = new D1(); $e = new E1(); $c(0, 1); $d(0, 1); $e(0, 1); call_user_func($c, 0, 1); call_user_func($d, 0, 1); call_user_func($e, 0, 1); call_user_func_array($c, array(0, 1)); call_user_func_array($d, array(0, 1)); call_user_func_array($e, array(0, 1)); $c->__invoke(0, 1); $d->__invoke(0, 1); $e->__invoke(0, 1); C1::__invoke(0, 1); D1::__invoke(0, 1); E1::__invoke(0, 1); function mk($n) { return $n . '::__invoke'; } call_user_func(mk('C1'), 0, 1); call_user_func(mk('D1'), 0, 1); call_user_func(mk('E1'), 0, 1); var_dump(array_filter(array(0, 1, 11, 13), new F1()));
<?php require_once 'PHPJAO.php'; class E1PHPJAOClassDescription extends PHPJAOClassDescription { public function __construct() { parent::__construct(); $this->javaClass = 'ua.gradsoft.t1.E1'; $this->phpClass = 'E1'; $this->typesOfFields = array('name' => 'java.lang.String', 'value' => 'java.lang.String', 'truth' => 'java.lang.Boolean'); } public function newInstance() { return new E1(); } } class E1 extends PHPJAOPOJOBase { static $phpjaoClassDescription; public function getPHPJAOClassDescription() { return self::$phpjaoClassDescription; } public $name; public $value; public $truth; } E1::$phpjaoClassDescription = new E1PHPJAOClassDescription(); PHPJAO::registerType('ua.gradsoft.t1.E1', E1::$phpjaoClassDescription);