Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 12
Branch analysis from position: 12
2 jumps found. (Code = 44) Position 1 = 14, Position 2 = 5
Branch analysis from position: 14
1 jumps found. (Code = 42) Position 1 = 43
Branch analysis from position: 43
2 jumps found. (Code = 44) Position 1 = 46, Position 2 = 18
Branch analysis from position: 46
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 18
2 jumps found. (Code = 47) Position 1 = 32, Position 2 = 34
Branch analysis from position: 32
2 jumps found. (Code = 43) Position 1 = 35, Position 2 = 42
Branch analysis from position: 35
2 jumps found. (Code = 44) Position 1 = 46, Position 2 = 18
Branch analysis from position: 46
Branch analysis from position: 18
Branch analysis from position: 42
Branch analysis from position: 34
Branch analysis from position: 5
2 jumps found. (Code = 44) Position 1 = 14, Position 2 = 5
Branch analysis from position: 14
Branch analysis from position: 5
filename: /in/nGEHm
function name: (null)
number of ops: 50
compiled vars: !0 = $storage, !1 = $i, !2 = $iterations, !3 = $object
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
7 0 E > NEW $4 'SplObjectStorage'
1 DO_FCALL 0
2 ASSIGN !0, $4
8 3 ASSIGN !1, 1
4 > JMP ->12
9 5 > INIT_METHOD_CALL !0, 'attach'
6 NEW $8 'A'
7 SEND_VAR_EX !1
8 DO_FCALL 0
9 SEND_VAR_NO_REF_EX $8
10 DO_FCALL 0
8 11 PRE_INC !1
12 > IS_SMALLER_OR_EQUAL !1, 10
13 > JMPNZ ~12, ->5
11 14 > ASSIGN !2, 0
12 15 INIT_METHOD_CALL !0, 'rewind'
16 DO_FCALL 0
13 17 > JMP ->43
14 18 > PRE_INC !2
15 19 INIT_METHOD_CALL !0, 'current'
20 DO_FCALL 0 $16
21 ASSIGN !3, $16
16 22 CONCAT ~18 'Iteration+%23', !2
23 CONCAT ~19 ~18, '+with+object+A%28'
24 FETCH_OBJ_R ~20 !3, 'val'
25 CONCAT ~21 ~19, ~20
26 CONCAT ~22 ~21, '%29'
27 ECHO ~22
17 28 INIT_METHOD_CALL !0, 'next'
29 DO_FCALL 0
18 30 IS_IDENTICAL ~24 !2, 2
31 > JMPNZ_EX ~24 ~24, ->34
32 > IS_IDENTICAL ~25 !2, 8
33 BOOL ~24 ~25
34 > > JMPZ ~24, ->42
19 35 > INIT_METHOD_CALL !0, 'detach'
36 SEND_VAR_EX !3
37 DO_FCALL 0
20 38 FETCH_OBJ_R ~27 !3, 'val'
39 CONCAT ~28 '+-+deleted+Object+A%28', ~27
40 CONCAT ~29 ~28, '%29+'
41 ECHO ~29
22 42 > ECHO '%0A'
13 43 > INIT_METHOD_CALL !0, 'valid'
44 DO_FCALL 0 $30
45 > JMPNZ $30, ->18
24 46 > CONCAT ~31 'Number+of+iterations%3A+', !2
47 CONCAT ~32 ~31, '%0A'
48 ECHO ~32
49 > RETURN 1
Class A:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/nGEHm
function name: __construct
number of ops: 4
compiled vars: !0 = $val
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
5 0 E > RECV !0
1 ASSIGN_OBJ 'val'
2 OP_DATA !0
3 > RETURN null
End of function __construct
End of class A.
Generated using Vulcan Logic Dumper, using php 8.0.0