1: <?php
2:
3: 4: 5: 6:
7:
8: namespace Latte;
9:
10:
11: 12: 13:
14: abstract class Object
15: {
16:
17: 18: 19: 20:
21: public function __call($name, $args)
22: {
23: $class = method_exists($this, $name) ? 'parent' : get_class($this);
24: throw new \LogicException(sprintf('Call to undefined method %s::%s().', $class, $name));
25: }
26:
27:
28: 29: 30: 31:
32: public function &__get($name)
33: {
34: throw new \LogicException(sprintf('Cannot read an undeclared property %s::$%s.', get_class($this), $name));
35: }
36:
37:
38: 39: 40: 41:
42: public function __set($name, $value)
43: {
44: throw new \LogicException(sprintf('Cannot write to an undeclared property %s::$%s.', get_class($this), $name));
45: }
46:
47:
48: 49: 50:
51: public function __isset($name)
52: {
53: return FALSE;
54: }
55:
56:
57: 58: 59: 60:
61: public function __unset($name)
62: {
63: throw new \LogicException(sprintf('Cannot unset the property %s::$%s.', get_class($this), $name));
64: }
65:
66: }
67: