Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: (null)
number of ops: 6
compiled vars: !0 = $obj
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
22 0 E > DECLARE_CLASS 'myclabs%5Cenum%5Cenum'
328 1 DECLARE_CLASS 'myclabs%5Cenum%5Cmethod', 'myclabs%5Cenum%5Cenum'
346 2 NEW $1 'MyCLabs%5CEnum%5CTest'
3 DO_FCALL 0
4 ASSIGN !0, $1
5 > RETURN 1
Class MyCLabs\Enum\Enum:
Function __construct:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 3, Position 2 = 6
Branch analysis from position: 3
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 6
filename: /in/oGIOE
function name: __construct
number of ops: 14
compiled vars: !0 = $value
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
65 0 E > RECV !0
67 1 INSTANCEOF !0
2 > JMPZ ~1, ->6
69 3 > INIT_METHOD_CALL !0, 'getValue'
4 DO_FCALL 0 $2
5 ASSIGN !0, $2
73 6 > INIT_STATIC_METHOD_CALL 'assertValidValueReturningKey'
7 SEND_VAR_EX !0
8 DO_FCALL 0 $5
9 ASSIGN_OBJ 'key'
10 OP_DATA $5
76 11 ASSIGN_OBJ 'value'
12 OP_DATA !0
77 13 > RETURN null
End of function __construct
Function __wakeup:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 3, Position 2 = 10
Branch analysis from position: 3
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 10
filename: /in/oGIOE
function name: __wakeup
number of ops: 11
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
86 0 E > FETCH_OBJ_R ~0 'key'
1 TYPE_CHECK 2 ~0
2 > JMPZ ~1, ->10
91 3 > INIT_STATIC_METHOD_CALL 'search'
4 CHECK_FUNC_ARG
5 FETCH_OBJ_FUNC_ARG $3 'value'
6 SEND_FUNC_ARG $3
7 DO_FCALL 0 $4
8 ASSIGN_OBJ 'key'
9 OP_DATA $4
93 10 > > RETURN null
End of function __wakeup
Function from:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: from
number of ops: 13
compiled vars: !0 = $value, !1 = $key
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
100 0 E > RECV !0
102 1 INIT_STATIC_METHOD_CALL 'assertValidValueReturningKey'
2 SEND_VAR_EX !0
3 DO_FCALL 0 $2
4 ASSIGN !1, $2
104 5 INIT_STATIC_METHOD_CALL '__callStatic'
6 SEND_VAR_EX !1
7 SEND_VAL_EX <array>
8 DO_FCALL 0 $4
9 VERIFY_RETURN_TYPE $4
10 > RETURN $4
105 11* VERIFY_RETURN_TYPE
12* > RETURN null
End of function from
Function getvalue:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: getValue
number of ops: 3
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
114 0 E > FETCH_OBJ_R ~0 'value'
1 > RETURN ~0
115 2* > RETURN null
End of function getvalue
Function getkey:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: getKey
number of ops: 3
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
125 0 E > FETCH_OBJ_R ~0 'key'
1 > RETURN ~0
126 2* > RETURN null
End of function getkey
Function __tostring:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: __toString
number of ops: 6
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
135 0 E > FETCH_OBJ_R ~0 'value'
1 CAST 6 ~1 ~0
2 VERIFY_RETURN_TYPE ~1
3 > RETURN ~1
136 4* VERIFY_RETURN_TYPE
5* > RETURN null
End of function __tostring
Function equals:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 46) Position 1 = 3, Position 2 = 9
Branch analysis from position: 3
2 jumps found. (Code = 46) Position 1 = 10, Position 2 = 14
Branch analysis from position: 10
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 14
Branch analysis from position: 9
filename: /in/oGIOE
function name: equals
number of ops: 18
compiled vars: !0 = $variable
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
148 0 E > RECV_INIT !0 null
150 1 INSTANCEOF ~1 !0
2 > JMPZ_EX ~1 ~1, ->9
151 3 > INIT_METHOD_CALL 'getValue'
4 DO_FCALL 0 $2
5 INIT_METHOD_CALL !0, 'getValue'
6 DO_FCALL 0 $3
7 IS_IDENTICAL ~4 $2, $3
8 BOOL ~1 ~4
9 > > JMPZ_EX ~1 ~1, ->14
152 10 > FETCH_CLASS_NAME ~5
11 GET_CLASS ~6 !0
12 IS_IDENTICAL ~7 ~5, ~6
13 BOOL ~1 ~7
14 > VERIFY_RETURN_TYPE ~1
15 > RETURN ~1
153 16* VERIFY_RETURN_TYPE
17* > RETURN null
End of function equals
Function keys:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: keys
number of ops: 7
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
164 0 E > INIT_FCALL 'array_keys'
1 INIT_STATIC_METHOD_CALL 'toArray'
2 DO_FCALL 0 $0
3 SEND_VAR $0
4 DO_ICALL $1
5 > RETURN $1
165 6* > RETURN null
End of function keys
Function values:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 4, Position 2 = 12
Branch analysis from position: 4
2 jumps found. (Code = 78) Position 1 = 5, Position 2 = 12
Branch analysis from position: 5
1 jumps found. (Code = 42) Position 1 = 4
Branch analysis from position: 4
Branch analysis from position: 12
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 12
filename: /in/oGIOE
function name: values
number of ops: 15
compiled vars: !0 = $values, !1 = $value, !2 = $key
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
176 0 E > ASSIGN !0, <array>
179 1 INIT_STATIC_METHOD_CALL 'toArray'
2 DO_FCALL 0 $4
3 > FE_RESET_R $5 $4, ->12
4 > > FE_FETCH_R ~6 $5, !1, ->12
5 > ASSIGN !2, ~6
180 6 NEW static $9
7 SEND_VAR_EX !1
8 DO_FCALL 0
9 ASSIGN_DIM !0, !2
10 OP_DATA $9
179 11 > JMP ->4
12 > FE_FREE $5
183 13 > RETURN !0
184 14* > RETURN null
End of function values
Function toarray:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 15
Branch analysis from position: 6
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 15
filename: /in/oGIOE
function name: toArray
number of ops: 19
compiled vars: !0 = $class, !1 = $reflection
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
197 0 E > FETCH_CLASS_NAME ~2
1 ASSIGN !0, ~2
199 2 FETCH_STATIC_PROP_IS ~4 'cache'
3 ISSET_ISEMPTY_DIM_OBJ 0 ~5 ~4, !0
4 BOOL_NOT ~6 ~5
5 > JMPZ ~6, ->15
201 6 > NEW $7 'ReflectionClass'
7 SEND_VAR_EX !0
8 DO_FCALL 0
9 ASSIGN !1, $7
203 10 INIT_METHOD_CALL !1, 'getConstants'
11 DO_FCALL 0 $12
12 FETCH_STATIC_PROP_W unknown $10 'cache'
13 ASSIGN_DIM $10, !0
14 OP_DATA $12
206 15 > FETCH_STATIC_PROP_R unknown ~13 'cache'
16 FETCH_DIM_R ~14 ~13, !0
17 > RETURN ~14
207 18* > RETURN null
End of function toarray
Function isvalid:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: isValid
number of ops: 10
compiled vars: !0 = $value
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
218 0 E > RECV !0
220 1 INIT_FCALL 'in_array'
2 SEND_VAR !0
3 INIT_STATIC_METHOD_CALL 'toArray'
4 DO_FCALL 0 $1
5 SEND_VAR $1
6 SEND_VAL <true>
7 DO_ICALL $2
8 > RETURN $2
221 9* > RETURN null
End of function isvalid
Function assertvalidvalue:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: assertValidValue
number of ops: 5
compiled vars: !0 = $value
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
230 0 E > RECV !0
232 1 INIT_STATIC_METHOD_CALL 'assertValidValueReturningKey'
2 SEND_VAR_EX !0
3 DO_FCALL 0
233 4 > RETURN null
End of function assertvalidvalue
Function assertvalidvaluereturningkey:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 7, Position 2 = 16
Branch analysis from position: 7
1 jumps found. (Code = 108) Position 1 = -2
Branch analysis from position: 16
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: assertValidValueReturningKey
number of ops: 20
compiled vars: !0 = $value, !1 = $key
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
243 0 E > RECV !0
245 1 INIT_STATIC_METHOD_CALL 'search'
2 SEND_VAR_EX !0
3 DO_FCALL 0 $2
4 ASSIGN ~3 !1, $2
5 TYPE_CHECK 4 ~3
6 > JMPZ ~4, ->16
246 7 > NEW $5 'UnexpectedValueException'
8 ROPE_INIT 3 ~7 'Value+%27'
9 ROPE_ADD 1 ~7 ~7, !0
10 ROPE_END 2 ~6 ~7, '%27+is+not+part+of+the+enum+'
11 FETCH_CLASS_NAME ~9
12 CONCAT ~10 ~6, ~9
13 SEND_VAL_EX ~10
14 DO_FCALL 0
15 > THROW 0 $5
249 16 > VERIFY_RETURN_TYPE !1
17 > RETURN !1
250 18* VERIFY_RETURN_TYPE
19* > RETURN null
End of function assertvalidvaluereturningkey
Function isvalidkey:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 47) Position 1 = 6, Position 2 = 8
Branch analysis from position: 6
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 8
filename: /in/oGIOE
function name: isValidKey
number of ops: 10
compiled vars: !0 = $key, !1 = $array
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
260 0 E > RECV !0
262 1 INIT_STATIC_METHOD_CALL 'toArray'
2 DO_FCALL 0 $2
3 ASSIGN !1, $2
264 4 ISSET_ISEMPTY_DIM_OBJ 0 ~4 !1, !0
5 > JMPNZ_EX ~4 ~4, ->8
6 > ARRAY_KEY_EXISTS ~5 !0, !1
7 BOOL ~4 ~5
8 > > RETURN ~4
265 9* > RETURN null
End of function isvalidkey
Function search:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: search
number of ops: 10
compiled vars: !0 = $value
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
276 0 E > RECV !0
278 1 INIT_FCALL 'array_search'
2 SEND_VAR !0
3 INIT_STATIC_METHOD_CALL 'toArray'
4 DO_FCALL 0 $1
5 SEND_VAR $1
6 SEND_VAL <true>
7 DO_ICALL $2
8 > RETURN $2
279 9* > RETURN null
End of function search
Function __callstatic:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 9, Position 2 = 39
Branch analysis from position: 9
2 jumps found. (Code = 46) Position 1 = 15, Position 2 = 18
Branch analysis from position: 15
2 jumps found. (Code = 43) Position 1 = 19, Position 2 = 29
Branch analysis from position: 19
1 jumps found. (Code = 108) Position 1 = -2
Branch analysis from position: 29
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 18
Branch analysis from position: 39
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: __callStatic
number of ops: 45
compiled vars: !0 = $name, !1 = $arguments, !2 = $class, !3 = $array, !4 = $message
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
292 0 E > RECV !0
1 RECV !1
294 2 FETCH_CLASS_NAME ~5
3 ASSIGN !2, ~5
295 4 FETCH_STATIC_PROP_IS ~7 'instances'
5 FETCH_DIM_IS ~8 ~7, !2
6 ISSET_ISEMPTY_DIM_OBJ 0 ~9 ~8, !0
7 BOOL_NOT ~10 ~9
8 > JMPZ ~10, ->39
296 9 > INIT_STATIC_METHOD_CALL 'toArray'
10 DO_FCALL 0 $11
11 ASSIGN !3, $11
297 12 ISSET_ISEMPTY_DIM_OBJ 0 ~13 !3, !0
13 BOOL_NOT ~14 ~13
14 > JMPZ_EX ~14 ~14, ->18
15 > ARRAY_KEY_EXISTS ~15 !0, !3
16 BOOL_NOT ~16 ~15
17 BOOL ~14 ~16
18 > > JMPZ ~14, ->29
298 19 > ROPE_INIT 3 ~18 'No+static+method+or+enum+constant+%27'
20 ROPE_ADD 1 ~18 ~18, !0
21 ROPE_END 2 ~17 ~18, '%27+in+class+'
22 FETCH_CLASS_NAME ~20
23 CONCAT ~21 ~17, ~20
24 ASSIGN !4, ~21
299 25 NEW $23 'BadMethodCallException'
26 SEND_VAR_EX !4
27 DO_FCALL 0
28 > THROW 0 $23
301 29 > NEW static $28
30 CHECK_FUNC_ARG
31 FETCH_DIM_FUNC_ARG $29 !3, !0
32 SEND_FUNC_ARG $29
33 DO_FCALL 0
34 FETCH_STATIC_PROP_W unknown $25 'instances'
35 FETCH_DIM_W $26 $25, !2
36 ASSIGN_DIM ~27 $26, !0
37 OP_DATA $28
38 > RETURN ~27
303 39 > FETCH_STATIC_PROP_R unknown ~31 'instances'
40 FETCH_DIM_R ~32 ~31, !2
41 FETCH_DIM_R ~33 ~32, !0
42 CLONE ~34 ~33
43 > RETURN ~34
304 44* > RETURN null
End of function __callstatic
Function jsonserialize:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: jsonSerialize
number of ops: 6
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
316 0 E > INIT_METHOD_CALL 'getValue'
1 DO_FCALL 0 $0
2 VERIFY_RETURN_TYPE $0
3 > RETURN $0
317 4* VERIFY_RETURN_TYPE
5* > RETURN null
End of function jsonserialize
End of class MyCLabs\Enum\Enum.
Class MyCLabs\Enum\Method: [no user functions]
Class MyCLabs\Enum\Test:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/oGIOE
function name: __construct
number of ops: 5
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
341 0 E > INIT_STATIC_METHOD_CALL 'MyCLabs%5CEnum%5CMethod', 'STORE'
1 DO_FCALL 0 $1
2 ASSIGN_OBJ 'method'
3 OP_DATA $1
342 4 > RETURN null
End of function __construct
End of class MyCLabs\Enum\Test.
Generated using Vulcan Logic Dumper, using php 8.0.0