donquixote / callback-reflection
1.0.2
2019-05-04 12:46 UTC
This package is auto-updated.
Last update: 2024-11-05 04:37:51 UTC
README
callback-reflection
A library that provides a unified callback interface, with implementations wrapping different callback types.
This way, static methods, closures/lambdas, class constructor calls and other php callables become interchangeable.
Example
class C { private $x; private $y; public function __construct($x, $y) { $this->x = $x; $this->y = $y; } } // Callback from class constructor. $callback = CallbackReflection_ClassConstruction::create(C::class); // Get reflection parameters. $parameters = $callback->getReflectionParameters(); // Invoke the callback to create a class instance. $instance = $callback->invokeArgs(['x', 'y']); // Generate a PHP statement. $codegenHelper = new CodegenHelper(); $php = $callback->argsPhpGetPhp(["'x'", "'y'"], $codegenHelper);