Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/WRatI
function name: (null)
number of ops: 54
compiled vars: !0 = $x, !1 = $y
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
65 0 E > NEW $2 'Tuvi'
1 SEND_VAL_EX 31
2 SEND_VAL_EX 1
3 SEND_VAL_EX 1988
4 DO_FCALL 0
5 ASSIGN !0, $2
66 6 NEW $5 'Tuvi'
7 SEND_VAL_EX 31
8 SEND_VAL_EX 12
9 SEND_VAL_EX 1989
10 DO_FCALL 0
11 ASSIGN !1, $5
68 12 INIT_FCALL 'var_dump'
69 13 INIT_METHOD_CALL !0, 'diffDays'
14 SEND_VAR_EX !1
15 DO_FCALL 0 $8
16 SEND_VAR $8
70 17 INIT_METHOD_CALL !0, 'isLessThan'
18 SEND_VAR_EX !1
19 DO_FCALL 0 $9
20 SEND_VAR $9
71 21 INIT_METHOD_CALL !1, 'isLessThan'
22 SEND_VAR_EX !0
23 DO_FCALL 0 $10
24 SEND_VAR $10
72 25 INIT_METHOD_CALL !0, 'toLunarDate'
26 DO_FCALL 0 $11
27 SEND_VAR $11
73 28 NEW $12 'Tuvi'
29 SEND_VAL_EX 15
30 SEND_VAL_EX 12
31 SEND_VAL_EX 1990
32 DO_FCALL 0
33 INIT_METHOD_CALL $12, 'toLunarDate'
34 DO_FCALL 0 $14
35 SEND_VAR $14
74 36 NEW $15 'Tuvi'
37 SEND_VAL_EX 25
38 SEND_VAL_EX 3
39 SEND_VAL_EX 2000
40 DO_FCALL 0
41 INIT_METHOD_CALL $15, 'toLunarDate'
42 DO_FCALL 0 $17
43 SEND_VAR $17
75 44 NEW $18 'Tuvi'
45 SEND_VAL_EX 27
46 SEND_VAL_EX 11
47 SEND_VAL_EX 1995
48 DO_FCALL 0
49 INIT_METHOD_CALL $18, 'toLunarDate'
50 DO_FCALL 0 $20
51 SEND_VAR $20
68 52 DO_ICALL
76 53 > RETURN 1
Class Tuvi:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/WRatI
function name: __construct
number of ops: 10
compiled vars: !0 = $day, !1 = $month, !2 = $year
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
12 0 E > RECV !0
1 RECV !1
2 RECV !2
14 3 ASSIGN_OBJ 'day'
4 OP_DATA !0
15 5 ASSIGN_OBJ 'month'
6 OP_DATA !1
16 7 ASSIGN_OBJ 'year'
8 OP_DATA !2
17 9 > RETURN null
End of function __construct
Function tolunardate:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 16, Position 2 = 27
Branch analysis from position: 16
1 jumps found. (Code = 42) Position 1 = 39
Branch analysis from position: 39
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 27
2 jumps found. (Code = 43) Position 1 = 31, Position 2 = 39
Branch analysis from position: 31
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 39
filename: /in/WRatI
function name: toLunarDate
number of ops: 50
compiled vars: !0 = $can, !1 = $chi, !2 = $comparingDate, !3 = $diffDays
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
21 0 E > ASSIGN !0, 3
22 1 ASSIGN !1, 9
24 2 NEW self $6
3 SEND_VAL_EX 1
4 SEND_VAL_EX 3
5 SEND_VAL_EX 1996
6 DO_FCALL 0
7 ASSIGN !2, $6
25 8 INIT_METHOD_CALL 'diffDays'
9 SEND_VAR_EX !2
10 DO_FCALL 0 $9
11 ASSIGN !3, $9
27 12 INIT_METHOD_CALL 'isLessThan'
13 SEND_VAR_EX !2
14 DO_FCALL 0 $11
15 > JMPZ $11, ->27
28 16 > MOD ~12 !3, 10
17 SUB ~13 !0, ~12
18 ADD ~14 ~13, 10
19 MOD ~15 ~14, 10
20 ASSIGN !0, ~15
29 21 MOD ~17 !3, 12
22 SUB ~18 !1, ~17
23 ADD ~19 ~18, 12
24 MOD ~20 ~19, 12
25 ASSIGN !1, ~20
27 26 > JMP ->39
30 27 > INIT_METHOD_CALL 'isGreaterThan'
28 SEND_VAR_EX !2
29 DO_FCALL 0 $22
30 > JMPZ $22, ->39
31 31 > MOD ~23 !3, 10
32 ADD ~24 !0, ~23
33 MOD ~25 ~24, 10
34 ASSIGN !0, ~25
32 35 MOD ~27 !3, 12
36 ADD ~28 !1, ~27
37 MOD ~29 ~28, 12
38 ASSIGN !1, ~29
35 39 > FETCH_CLASS_CONSTANT ~31 'CAN'
40 FETCH_DIM_R ~32 ~31, !0
41 FETCH_CLASS_CONSTANT ~33 'CHI'
42 FETCH_DIM_R ~34 ~33, !1
43 ROPE_INIT 3 ~36 ~32
44 ROPE_ADD 1 ~36 ~36, '+'
45 ROPE_END 2 ~35 ~36, ~34
46 VERIFY_RETURN_TYPE ~35
47 > RETURN ~35
36 48* VERIFY_RETURN_TYPE
49* > RETURN null
End of function tolunardate
Function diffdays:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/WRatI
function name: diffDays
number of ops: 13
compiled vars: !0 = $t
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
38 0 E > RECV !0
40 1 INIT_METHOD_CALL 'toDateTime'
2 DO_FCALL 0 $1
3 INIT_METHOD_CALL $1, 'diff'
4 INIT_METHOD_CALL !0, 'toDateTime'
5 DO_FCALL 0 $2
6 SEND_VAR_NO_REF_EX $2
7 DO_FCALL 0 $3
8 FETCH_OBJ_R ~4 $3, 'days'
9 VERIFY_RETURN_TYPE ~4
10 > RETURN ~4
41 11* VERIFY_RETURN_TYPE
12* > RETURN null
End of function diffdays
Function islessthan:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/WRatI
function name: isLessThan
number of ops: 10
compiled vars: !0 = $t
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
43 0 E > RECV !0
45 1 INIT_METHOD_CALL 'toDateTime'
2 DO_FCALL 0 $1
3 INIT_METHOD_CALL !0, 'toDateTime'
4 DO_FCALL 0 $2
5 IS_SMALLER ~3 $1, $2
6 VERIFY_RETURN_TYPE ~3
7 > RETURN ~3
46 8* VERIFY_RETURN_TYPE
9* > RETURN null
End of function islessthan
Function equals:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/WRatI
function name: equals
number of ops: 10
compiled vars: !0 = $t
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
48 0 E > RECV !0
50 1 INIT_METHOD_CALL 'toDateTime'
2 DO_FCALL 0 $1
3 INIT_METHOD_CALL !0, 'toDateTime'
4 DO_FCALL 0 $2
5 IS_EQUAL ~3 $1, $2
6 VERIFY_RETURN_TYPE ~3
7 > RETURN ~3
51 8* VERIFY_RETURN_TYPE
9* > RETURN null
End of function equals
Function isgreaterthan:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/WRatI
function name: isGreaterThan
number of ops: 10
compiled vars: !0 = $t
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
53 0 E > RECV !0
55 1 INIT_METHOD_CALL 'toDateTime'
2 DO_FCALL 0 $1
3 INIT_METHOD_CALL !0, 'toDateTime'
4 DO_FCALL 0 $2
5 IS_SMALLER ~3 $2, $1
6 VERIFY_RETURN_TYPE ~3
7 > RETURN ~3
56 8* VERIFY_RETURN_TYPE
9* > RETURN null
End of function isgreaterthan
Function todatetime:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/WRatI
function name: toDateTime
number of ops: 15
compiled vars: none
line #* E I O op fetch ext return operands
-----------------------------------------------------------------------------------------
60 0 E > NEW $0 'DateTime'
1 FETCH_OBJ_R ~1 'year'
2 ROPE_INIT 5 ~5 ~1
3 ROPE_ADD 1 ~5 ~5, '-'
4 FETCH_OBJ_R ~2 'month'
5 ROPE_ADD 2 ~5 ~5, ~2
6 ROPE_ADD 3 ~5 ~5, '-'
7 FETCH_OBJ_R ~3 'day'
8 ROPE_END 4 ~4 ~5, ~3
9 SEND_VAL_EX ~4
10 DO_FCALL 0
11 VERIFY_RETURN_TYPE $0
12 > RETURN $0
61 13* VERIFY_RETURN_TYPE
14* > RETURN null
End of function todatetime
End of class Tuvi.
Generated using Vulcan Logic Dumper, using php 8.5.0