Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/FXcFv
function name: (null)
number of ops: 17
compiled vars: !0 = $renderFunction
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
2 0 E > DECLARE_CLASS 'mydata'
14 1 DECLARE_CLASS 'myiterator'
51 2 DECLARE_LAMBDA_FUNCTION ~1 [0]
3 ASSIGN !0, ~1
59 4 ECHO '-----+Aggregate+Iterator+-----%0A'
60 5 INIT_DYNAMIC_CALL !0
6 NEW $3 'myData'
7 DO_FCALL 0
8 SEND_VAR_NO_REF_EX $3
9 DO_FCALL 0
62 10 ECHO '%0A-----+Simple+Iterator-----%0A'
63 11 INIT_DYNAMIC_CALL !0
12 NEW $6 'myIterator'
13 DO_FCALL 0
14 SEND_VAR_NO_REF_EX $6
15 DO_FCALL 0
16 > RETURN 1
Dynamic Functions:
Dynamic Function 0
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 2, Position 2 = 21
Branch analysis from position: 2
2 jumps found. (Code = 78) Position 1 = 3, Position 2 = 21
Branch analysis from position: 3
2 jumps found. (Code = 77) Position 1 = 10, Position 2 = 19
Branch analysis from position: 10
2 jumps found. (Code = 78) Position 1 = 11, Position 2 = 19
Branch analysis from position: 11
1 jumps found. (Code = 42) Position 1 = 10
Branch analysis from position: 10
Branch analysis from position: 19
1 jumps found. (Code = 42) Position 1 = 2
Branch analysis from position: 2
Branch analysis from position: 19
Branch analysis from position: 21
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 21
filename: /in/FXcFv
function name: {closure}
number of ops: 23
compiled vars: !0 = $iterator, !1 = $value, !2 = $key
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
51 0 E > RECV !0
52 1 > FE_RESET_R $3 !0, ->21
2 > > FE_FETCH_R ~4 $3, !1, ->21
3 > ASSIGN !2, ~4
53 4 ROPE_INIT 4 ~7 !2
5 ROPE_ADD 1 ~7 ~7, '%3A+'
6 ROPE_ADD 2 ~7 ~7, !1
7 ROPE_END 3 ~6 ~7, '%0A'
8 ECHO ~6
54 9 > FE_RESET_R $9 !0, ->19
10 > > FE_FETCH_R ~10 $9, !1, ->19
11 > ASSIGN !2, ~10
55 12 ROPE_INIT 5 ~13 '++++'
13 ROPE_ADD 1 ~13 ~13, !2
14 ROPE_ADD 2 ~13 ~13, '%3A+'
15 ROPE_ADD 3 ~13 ~13, !1
16 ROPE_END 4 ~12 ~13, '%0A'
17 ECHO ~12
54 18 > JMP ->10
19 > FE_FREE $9
52 20 > JMP ->2
21 > FE_FREE $3
58 22 > RETURN null
End of Dynamic Function 0
Class myData:
Function getiterator:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/FXcFv
function name: getIterator
number of ops: 8
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
10 0 E > NEW $0 'ArrayIterator'
1 FETCH_THIS $1
2 SEND_VAR_EX $1
3 DO_FCALL 0
4 VERIFY_RETURN_TYPE $0
5 > RETURN $0
11 6* VERIFY_RETURN_TYPE
7* > RETURN null
End of function getiterator
End of class myData.
Class myIterator:
Function rewind:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/FXcFv
function name: rewind
number of ops: 3
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
21 0 E > ASSIGN_OBJ 'position'
1 OP_DATA 0
22 2 > RETURN null
End of function rewind
Function current:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/FXcFv
function name: current
number of ops: 10
compiled vars: !0 = $position, !1 = $key
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
26 0 E > FETCH_OBJ_R ~2 'position'
1 ADD ~3 ~2, 1
2 ASSIGN !0, ~3
27 3 CONCAT ~5 'property', !0
4 ASSIGN !1, ~5
28 5 FETCH_OBJ_R ~7 'array'
6 FETCH_DIM_R ~8 ~7, !1
7 > RETURN ~8
29 8* VERIFY_RETURN_TYPE
9* > RETURN null
End of function current
Function key:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/FXcFv
function name: key
number of ops: 8
compiled vars: !0 = $position, !1 = $key
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
33 0 E > FETCH_OBJ_R ~2 'position'
1 ADD ~3 ~2, 1
2 ASSIGN !0, ~3
34 3 CONCAT ~5 'property', !0
4 ASSIGN !1, ~5
35 5 > RETURN !1
36 6* VERIFY_RETURN_TYPE
7* > RETURN null
End of function key
Function next:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/FXcFv
function name: next
number of ops: 2
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
40 0 E > PRE_INC_OBJ 'position'
41 1 > RETURN null
End of function next
Function valid:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/FXcFv
function name: valid
number of ops: 11
compiled vars: !0 = $position, !1 = $key
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
45 0 E > FETCH_OBJ_R ~2 'position'
1 ADD ~3 ~2, 1
2 ASSIGN !0, ~3
46 3 CONCAT ~5 'property', !0
4 ASSIGN !1, ~5
47 5 FETCH_OBJ_IS ~7 'array'
6 ISSET_ISEMPTY_DIM_OBJ 0 ~8 ~7, !1
7 VERIFY_RETURN_TYPE ~8
8 > RETURN ~8
48 9* VERIFY_RETURN_TYPE
10* > RETURN null
End of function valid
End of class myIterator.
Generated using Vulcan Logic Dumper, using php 8.0.0