function() { print "It!\n"; } * )); * $object->doIt(); * @endcode */ class CRM_Utils_FakeObject { function __construct($array) { $this->array = $array; } function __call($name, $arguments) { if (isset($this->array[$name]) && is_callable($this->array[$name])) { return call_user_func_array($this->array[$name], $arguments); } else { throw new Exception("Call to unimplemented method: $name"); } } }