blob: 5a40d05fd24eeec6eb9232855f7e71b6edcee192 (
plain)
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
68
69
|
/**
* Opcodes.h
*
* Class represents a set of opcodes of a PHP script that can be executed. This
* is an internal file that you normally do not have to instantiate yourself.
* Better use the Php::Script of Php::File classes.
*
* @author Emiel Bruijntjes <emiel.bruijntjes@copernica.com>
* @copyright 2014 Copernica BV
*/
/**
* Forward declarations
*/
struct _zend_op_array;
/**
* Namespace
*/
namespace Php {
/**
* Class definition
*/
class Opcodes
{
public:
/**
* Constructor
* @param opcodes
*/
Opcodes(struct _zend_op_array *opcodes) : _opcodes(opcodes)
{
// no other initialisation is necessary
}
/**
* Destructor
*/
virtual ~Opcodes();
/**
* Are the opcodes valid?
* @return bool
*/
bool valid() const
{
return _opcodes != nullptr;
}
/**
* Execute the opcodes
* @return Value
*/
Value execute() const;
private:
/**
* The opcodes
* @var zend_op_array
*/
struct _zend_op_array *_opcodes;
};
/**
* End of namespace
*/
}
|