Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Xbnls
function name: (null)
number of ops: 29
compiled vars: !0 = $entry1, !1 = $entry2, !2 = $mycart, !3 = $items, !4 = $mytax, !5 = $myorder
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
58 0 E > NEW $6 'CartEntry'
1 SEND_VAL_EX 1.2
2 SEND_VAL_EX 120
3 DO_FCALL 0
4 ASSIGN !0, $6
60 5 NEW $9 'CartEntry'
6 SEND_VAL_EX 2.2
7 SEND_VAL_EX 200
8 DO_FCALL 0
9 ASSIGN !1, $9
62 10 NEW $12 'CartContents'
11 INIT_ARRAY ~13 !0
12 ADD_ARRAY_ELEMENT ~13 !1
13 SEND_VAL_EX ~13
14 DO_FCALL 0
15 ASSIGN !2, $12
63 16 INIT_METHOD_CALL !2, 'ReturnItems'
17 DO_FCALL 0 $16
18 ASSIGN !3, $16
64 19 ASSIGN !4, 0.2
67 20 NEW $19 'Order'
21 SEND_VAR_EX !4
22 SEND_VAR_EX !3
23 DO_FCALL 0
24 ASSIGN !5, $19
68 25 INIT_METHOD_CALL !5, 'OrderTotal'
26 DO_FCALL 0 $22
27 ECHO $22
28 > RETURN 1
Class CartEntry:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Xbnls
function name: __construct
number of ops: 7
compiled vars: !0 = $Price, !1 = $Quantity
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
8 0 E > RECV !0
1 RECV !1
10 2 ASSIGN_OBJ 'Price'
3 OP_DATA !0
11 4 ASSIGN_OBJ 'Quantity'
5 OP_DATA !1
12 6 > RETURN null
End of function __construct
Function returnprice:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Xbnls
function name: ReturnPrice
number of ops: 3
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
15 0 E > FETCH_OBJ_R ~0 'Price'
1 > RETURN ~0
16 2* > RETURN null
End of function returnprice
Function returnquantity:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Xbnls
function name: ReturnQuantity
number of ops: 3
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
18 0 E > FETCH_OBJ_R ~0 'Quantity'
1 > RETURN ~0
19 2* > RETURN null
End of function returnquantity
End of class CartEntry.
Class CartContents:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Xbnls
function name: __construct
number of ops: 4
compiled vars: !0 = $items
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
27 0 E > RECV !0
28 1 ASSIGN_OBJ 'items'
2 OP_DATA !0
29 3 > RETURN null
End of function __construct
Function returnitems:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Xbnls
function name: ReturnItems
number of ops: 3
compiled vars: none
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
31 0 E > FETCH_OBJ_R ~0 'items'
1 > RETURN ~0
32 2* > RETURN null
End of function returnitems
End of class CartContents.
Class Order:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/Xbnls
function name: __construct
number of ops: 7
compiled vars: !0 = $salesTax, !1 = $items
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
41 0 E > RECV !0
1 RECV !1
43 2 ASSIGN_OBJ 'salesTax'
3 OP_DATA !0
44 4 ASSIGN_OBJ 'items'
5 OP_DATA !1
45 6 > RETURN null
End of function __construct
Function ordertotal:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 17
Branch analysis from position: 17
2 jumps found. (Code = 44) Position 1 = 19, Position 2 = 6
Branch analysis from position: 19
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 6
2 jumps found. (Code = 44) Position 1 = 19, Position 2 = 6
Branch analysis from position: 19
Branch analysis from position: 6
filename: /in/Xbnls
function name: OrderTotal
number of ops: 24
compiled vars: !0 = $cartTotal, !1 = $i, !2 = $max
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
50 0 E > ASSIGN !0, 0
51 1 ASSIGN !1, 0
2 FETCH_OBJ_R ~5 'items'
3 COUNT ~6 ~5
4 ASSIGN !2, ~6
5 > JMP ->17
52 6 > FETCH_OBJ_R ~8 'items'
7 FETCH_DIM_R ~9 ~8, !1
8 INIT_METHOD_CALL ~9, 'ReturnPrice'
9 DO_FCALL 0 $10
10 FETCH_OBJ_R ~11 'items'
11 FETCH_DIM_R ~12 ~11, !1
12 INIT_METHOD_CALL ~12, 'ReturnQuantity'
13 DO_FCALL 0 $13
14 MUL ~14 $10, $13
15 ASSIGN_OP 1 !0, ~14
51 16 PRE_INC !1
17 > IS_SMALLER !1, !2
18 > JMPNZ ~17, ->6
54 19 > FETCH_OBJ_R ~18 'salesTax'
20 MUL ~19 !0, ~18
21 ASSIGN_OP 1 !0, ~19
55 22 > RETURN !0
56 23* > RETURN null
End of function ordertotal
End of class Order.
Generated using Vulcan Logic Dumper, using php 8.0.0