Strict.php
1.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
namespace Mpdf;
trait Strict
{
/**
* @param string $name method name
* @param array $args arguments
*/
public function __call($name, $args)
{
$class = method_exists($this, $name) ? 'parent' : get_class($this);
throw new \Mpdf\MpdfException("Call to undefined method $class::$name()");
}
/**
* @param string $name lowercase method name
* @param array $args arguments
*/
public static function __callStatic($name, $args)
{
$class = get_called_class();
throw new \Mpdf\MpdfException("Call to undefined static function $class::$name()");
}
/**
* @param string $name property name
*/
public function &__get($name)
{
$class = get_class($this);
throw new \Mpdf\MpdfException("Cannot read an undeclared property $class::\$$name");
}
/**
* @param string $name property name
* @param mixed $value property value
*/
public function __set($name, $value)
{
$class = get_class($this);
throw new \Mpdf\MpdfException("Cannot write to an undeclared property $class::\$$name");
}
/**
* @param string $name property name
* @throws \Kdyby\StrictObjects\\Mpdf\MpdfException
*/
public function __isset($name)
{
$class = get_class($this);
throw new \Mpdf\MpdfException("Cannot read an undeclared property $class::\$$name");
}
/**
* @param string $name property name
* @throws \Kdyby\StrictObjects\\Mpdf\MpdfException
*/
public function __unset($name)
{
$class = get_class($this);
throw new \Mpdf\MpdfException("Cannot unset the property $class::\$$name.");
}
}