Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: (null)
number of ops: 43
compiled vars: !0 = $pavel, !1 = $gosho, !2 = $game, !3 = $anotherGame
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
147 0 E > NEW $4 'Player'
1 SEND_VAL_EX 'Pavel'
2 DO_FCALL 0
3 ASSIGN !0, $4
148 4 NEW $7 'Player'
5 SEND_VAL_EX 'Gosho'
6 DO_FCALL 0
7 ASSIGN !1, $7
150 8 NEW $10 'Game'
9 INIT_ARRAY ~11 !0
10 ADD_ARRAY_ELEMENT ~11 !1
11 SEND_VAL_EX ~11
12 DO_FCALL 0
13 ASSIGN !2, $10
151 14 INIT_METHOD_CALL !2, 'playRounds'
15 SEND_VAL_EX 3
16 DO_FCALL 0
152 17 INIT_METHOD_CALL !2, 'play'
18 DO_FCALL 0
154 19 INIT_METHOD_CALL !2, 'getWinner'
20 DO_FCALL 0 $16
21 INIT_METHOD_CALL $16, 'getName'
22 DO_FCALL 0 $17
23 ECHO $17
156 24 NEW $18 'Game'
25 INIT_ARRAY ~19 !0
26 ADD_ARRAY_ELEMENT ~19 !1
27 SEND_VAL_EX ~19
28 DO_FCALL 0
29 ASSIGN !3, $18
157 30 INIT_METHOD_CALL !0, 'setWeapon'
31 SEND_VAL_EX 'paper'
32 DO_FCALL 0
158 33 INIT_METHOD_CALL !1, 'setWeapon'
34 SEND_VAL_EX 'stone'
35 DO_FCALL 0
159 36 INIT_METHOD_CALL !3, 'fight'
37 DO_FCALL 0 $24
38 INIT_METHOD_CALL $24, 'getName'
39 DO_FCALL 0 $25
40 CONCAT ~26 '%0A', $25
41 ECHO ~26
42 > RETURN 1
Class Game:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: __construct
number of ops: 4
compiled vars: !0 = $players
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
14 0 E > RECV !0
16 1 ASSIGN_OBJ 'players'
2 OP_DATA !0
17 3 > RETURN null
End of function __construct
Function setrounds:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: setRounds
number of ops: 4
compiled vars: !0 = $rounds
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
19 0 E > RECV !0
21 1 ASSIGN_OBJ 'rounds'
2 OP_DATA !0
22 3 > RETURN null
End of function setrounds
Function getrounds:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: getRounds
number of ops: 5
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
26 0 E > FETCH_OBJ_R ~0 'rounds'
1 VERIFY_RETURN_TYPE ~0
2 > RETURN ~0
27 3* VERIFY_RETURN_TYPE
4* > RETURN null
End of function getrounds
Function playrounds:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: playRounds
number of ops: 4
compiled vars: !0 = $rounds
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
29 0 E > RECV !0
31 1 ASSIGN_OBJ 'rounds'
2 OP_DATA !0
32 3 > RETURN null
End of function playrounds
Function getwinner:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: getWinner
number of ops: 5
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
36 0 E > FETCH_OBJ_R ~0 'winner'
1 VERIFY_RETURN_TYPE ~0
2 > RETURN ~0
37 3* VERIFY_RETURN_TYPE
4* > RETURN null
End of function getwinner
Function setwinner:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: setWinner
number of ops: 4
compiled vars: !0 = $winner
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
39 0 E > RECV !0
41 1 ASSIGN_OBJ 'winner'
2 OP_DATA !0
42 3 > RETURN null
End of function setwinner
Function play:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 46
Branch analysis from position: 46
2 jumps found. (Code = 44) Position 1 = 50, Position 2 = 1
Branch analysis from position: 50
2 jumps found. (Code = 43) Position 1 = 60, Position 2 = 67
Branch analysis from position: 60
1 jumps found. (Code = 42) Position 1 = 73
Branch analysis from position: 73
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 67
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 1
2 jumps found. (Code = 43) Position 1 = 35, Position 2 = 36
Branch analysis from position: 35
1 jumps found. (Code = 42) Position 1 = 46
Branch analysis from position: 46
Branch analysis from position: 36
2 jumps found. (Code = 44) Position 1 = 50, Position 2 = 1
Branch analysis from position: 50
Branch analysis from position: 1
filename: /in/Tvb6h
function name: play
number of ops: 74
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
46 0 E > > JMP ->46
47 1 > FETCH_OBJ_R ~0 'players'
2 FETCH_DIM_R ~1 ~0, 0
3 INIT_METHOD_CALL ~1, 'setWeapon'
4 CHECK_FUNC_ARG
5 INIT_FCALL 'rand'
6 SEND_VAL 0
7 SEND_VAL 2
8 DO_ICALL $3
9 FETCH_OBJ_FUNC_ARG $2 'weapons'
10 FETCH_DIM_FUNC_ARG $4 $2, $3
11 SEND_FUNC_ARG $4
12 DO_FCALL 0
48 13 FETCH_OBJ_R ~6 'players'
14 FETCH_DIM_R ~7 ~6, 1
15 INIT_METHOD_CALL ~7, 'setWeapon'
16 CHECK_FUNC_ARG
17 INIT_FCALL 'rand'
18 SEND_VAL 0
19 SEND_VAL 2
20 DO_ICALL $9
21 FETCH_OBJ_FUNC_ARG $8 'weapons'
22 FETCH_DIM_FUNC_ARG $10 $8, $9
23 SEND_FUNC_ARG $10
24 DO_FCALL 0
50 25 FETCH_OBJ_R ~12 'players'
26 FETCH_DIM_R ~13 ~12, 0
27 INIT_METHOD_CALL ~13, 'getWeapon'
28 DO_FCALL 0 $14
29 FETCH_OBJ_R ~15 'players'
30 FETCH_DIM_R ~16 ~15, 1
31 INIT_METHOD_CALL ~16, 'getWeapon'
32 DO_FCALL 0 $17
33 IS_IDENTICAL $14, $17
34 > JMPZ ~18, ->36
51 35 > > JMP ->46
54 36 > INIT_METHOD_CALL 'fight'
37 DO_FCALL 0 $19
38 INIT_METHOD_CALL $19, 'addScore'
39 DO_FCALL 0
55 40 INIT_METHOD_CALL 'setRounds'
41 INIT_METHOD_CALL 'getRounds'
42 DO_FCALL 0 $21
43 SUB ~22 $21, 1
44 SEND_VAL_EX ~22
45 DO_FCALL 0
46 46 > INIT_METHOD_CALL 'getRounds'
47 DO_FCALL 0 $24
48 IS_NOT_IDENTICAL $24, 0
49 > JMPNZ ~25, ->1
58 50 > FETCH_OBJ_R ~26 'players'
51 FETCH_DIM_R ~27 ~26, 0
52 INIT_METHOD_CALL ~27, 'getScore'
53 DO_FCALL 0 $28
54 FETCH_OBJ_R ~29 'players'
55 FETCH_DIM_R ~30 ~29, 1
56 INIT_METHOD_CALL ~30, 'getScore'
57 DO_FCALL 0 $31
58 IS_SMALLER $31, $28
59 > JMPZ ~32, ->67
59 60 > INIT_METHOD_CALL 'setWinner'
61 CHECK_FUNC_ARG
62 FETCH_OBJ_FUNC_ARG $33 'players'
63 FETCH_DIM_FUNC_ARG $34 $33, 0
64 SEND_FUNC_ARG $34
65 DO_FCALL 0
58 66 > JMP ->73
61 67 > INIT_METHOD_CALL 'setWinner'
68 CHECK_FUNC_ARG
69 FETCH_OBJ_FUNC_ARG $36 'players'
70 FETCH_DIM_FUNC_ARG $37 $36, 1
71 SEND_FUNC_ARG $37
72 DO_FCALL 0
63 73 > > RETURN null
End of function play
Function fight:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 8, Position 2 = 32
Branch analysis from position: 8
2 jumps found. (Code = 43) Position 1 = 16, Position 2 = 20
Branch analysis from position: 16
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 20
2 jumps found. (Code = 43) Position 1 = 28, Position 2 = 32
Branch analysis from position: 28
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 32
2 jumps found. (Code = 43) Position 1 = 40, Position 2 = 64
Branch analysis from position: 40
2 jumps found. (Code = 43) Position 1 = 48, Position 2 = 52
Branch analysis from position: 48
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 52
2 jumps found. (Code = 43) Position 1 = 60, Position 2 = 64
Branch analysis from position: 60
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 64
2 jumps found. (Code = 43) Position 1 = 72, Position 2 = 84
Branch analysis from position: 72
2 jumps found. (Code = 43) Position 1 = 80, Position 2 = 84
Branch analysis from position: 80
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 84
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 84
Branch analysis from position: 64
Branch analysis from position: 32
filename: /in/Tvb6h
function name: fight
number of ops: 90
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
68 0 E > FETCH_OBJ_R ~0 'players'
1 FETCH_DIM_R ~1 ~0, 0
2 INIT_METHOD_CALL ~1, 'getWeapon'
3 DO_FCALL 0 $2
4 FETCH_OBJ_R ~3 'weapons'
5 FETCH_DIM_R ~4 ~3, 0
6 IS_IDENTICAL $2, ~4
7 > JMPZ ~5, ->32
69 8 > FETCH_OBJ_R ~6 'players'
9 FETCH_DIM_R ~7 ~6, 1
10 INIT_METHOD_CALL ~7, 'getWeapon'
11 DO_FCALL 0 $8
12 FETCH_OBJ_R ~9 'weapons'
13 FETCH_DIM_R ~10 ~9, 1
14 IS_IDENTICAL $8, ~10
15 > JMPZ ~11, ->20
70 16 > FETCH_OBJ_R ~12 'players'
17 FETCH_DIM_R ~13 ~12, 0
18 VERIFY_RETURN_TYPE ~13
19 > RETURN ~13
73 20 > FETCH_OBJ_R ~14 'players'
21 FETCH_DIM_R ~15 ~14, 1
22 INIT_METHOD_CALL ~15, 'getWeapon'
23 DO_FCALL 0 $16
24 FETCH_OBJ_R ~17 'weapons'
25 FETCH_DIM_R ~18 ~17, 2
26 IS_IDENTICAL $16, ~18
27 > JMPZ ~19, ->32
74 28 > FETCH_OBJ_R ~20 'players'
29 FETCH_DIM_R ~21 ~20, 1
30 VERIFY_RETURN_TYPE ~21
31 > RETURN ~21
78 32 > FETCH_OBJ_R ~22 'players'
33 FETCH_DIM_R ~23 ~22, 0
34 INIT_METHOD_CALL ~23, 'getWeapon'
35 DO_FCALL 0 $24
36 FETCH_OBJ_R ~25 'weapons'
37 FETCH_DIM_R ~26 ~25, 1
38 IS_IDENTICAL $24, ~26
39 > JMPZ ~27, ->64
79 40 > FETCH_OBJ_R ~28 'players'
41 FETCH_DIM_R ~29 ~28, 1
42 INIT_METHOD_CALL ~29, 'getWeapon'
43 DO_FCALL 0 $30
44 FETCH_OBJ_R ~31 'weapons'
45 FETCH_DIM_R ~32 ~31, 0
46 IS_IDENTICAL $30, ~32
47 > JMPZ ~33, ->52
80 48 > FETCH_OBJ_R ~34 'players'
49 FETCH_DIM_R ~35 ~34, 1
50 VERIFY_RETURN_TYPE ~35
51 > RETURN ~35
83 52 > FETCH_OBJ_R ~36 'players'
53 FETCH_DIM_R ~37 ~36, 1
54 INIT_METHOD_CALL ~37, 'getWeapon'
55 DO_FCALL 0 $38
56 FETCH_OBJ_R ~39 'weapons'
57 FETCH_DIM_R ~40 ~39, 2
58 IS_IDENTICAL $38, ~40
59 > JMPZ ~41, ->64
84 60 > FETCH_OBJ_R ~42 'players'
61 FETCH_DIM_R ~43 ~42, 0
62 VERIFY_RETURN_TYPE ~43
63 > RETURN ~43
88 64 > FETCH_OBJ_R ~44 'players'
65 FETCH_DIM_R ~45 ~44, 0
66 INIT_METHOD_CALL ~45, 'getWeapon'
67 DO_FCALL 0 $46
68 FETCH_OBJ_R ~47 'weapons'
69 FETCH_DIM_R ~48 ~47, 2
70 IS_IDENTICAL $46, ~48
71 > JMPZ ~49, ->84
89 72 > FETCH_OBJ_R ~50 'players'
73 FETCH_DIM_R ~51 ~50, 1
74 INIT_METHOD_CALL ~51, 'getWeapon'
75 DO_FCALL 0 $52
76 FETCH_OBJ_R ~53 'weapons'
77 FETCH_DIM_R ~54 ~53, 0
78 IS_IDENTICAL $52, ~54
79 > JMPZ ~55, ->84
90 80 > FETCH_OBJ_R ~56 'players'
81 FETCH_DIM_R ~57 ~56, 0
82 VERIFY_RETURN_TYPE ~57
83 > RETURN ~57
94 84 > FETCH_OBJ_R ~58 'players'
85 FETCH_DIM_R ~59 ~58, 1
86 VERIFY_RETURN_TYPE ~59
87 > RETURN ~59
95 88* VERIFY_RETURN_TYPE
89* > RETURN null
End of function fight
End of class Game.
Class Player:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: __construct
number of ops: 4
compiled vars: !0 = $name
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
108 0 E > RECV !0
110 1 ASSIGN_OBJ 'name'
2 OP_DATA !0
111 3 > RETURN null
End of function __construct
Function getweapon:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: getWeapon
number of ops: 5
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
115 0 E > FETCH_OBJ_R ~0 'weapon'
1 VERIFY_RETURN_TYPE ~0
2 > RETURN ~0
116 3* VERIFY_RETURN_TYPE
4* > RETURN null
End of function getweapon
Function setweapon:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: setWeapon
number of ops: 4
compiled vars: !0 = $weapon
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
118 0 E > RECV !0
120 1 ASSIGN_OBJ 'weapon'
2 OP_DATA !0
121 3 > RETURN null
End of function setweapon
Function getname:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: getName
number of ops: 5
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
125 0 E > FETCH_OBJ_R ~0 'name'
1 VERIFY_RETURN_TYPE ~0
2 > RETURN ~0
126 3* VERIFY_RETURN_TYPE
4* > RETURN null
End of function getname
Function setname:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: setName
number of ops: 4
compiled vars: !0 = $name
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
128 0 E > RECV !0
130 1 ASSIGN_OBJ 'name'
2 OP_DATA !0
131 3 > RETURN null
End of function setname
Function getscore:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: getScore
number of ops: 5
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
135 0 E > FETCH_OBJ_R ~0 'score'
1 VERIFY_RETURN_TYPE ~0
2 > RETURN ~0
136 3* VERIFY_RETURN_TYPE
4* > RETURN null
End of function getscore
Function addscore:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Tvb6h
function name: addScore
number of ops: 4
compiled vars: !0 = $score
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
138 0 E > RECV_INIT !0 1
140 1 ASSIGN_OBJ_OP 1 'score'
2 OP_DATA !0
141 3 > RETURN null
End of function addscore
End of class Player.
Generated using Vulcan Logic Dumper, using php 8.0.0