Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: (null) number of ops: 29 compiled vars: !0 = $h line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 233 0 E > ECHO 'First+Card%3A+2s+3h+4h+5h+As%0A%0A' 234 1 NEW $1 'Hand' 2 SEND_VAL_EX '2s+3h+4h+5h+As' 3 DO_FCALL 0 4 ASSIGN !0, $1 235 5 INIT_METHOD_CALL !0, 'evalHand' 6 DO_FCALL 0 237 7 ECHO '%0A%0ASecond+Card%3A+2s+3h+4h+5h+6s%0A%0A' 238 8 NEW $5 'Hand' 9 SEND_VAL_EX '2s+3h+4h+5h+6s' 10 DO_FCALL 0 11 ASSIGN !0, $5 239 12 INIT_METHOD_CALL !0, 'evalHand' 13 DO_FCALL 0 241 14 ECHO '%0A%0AThird+Card%3A+2h+3h+4h+5h+6h%0A%0A' 242 15 NEW $9 'Hand' 16 SEND_VAL_EX '2h+3h+4h+5h+6h' 17 DO_FCALL 0 18 ASSIGN !0, $9 243 19 INIT_METHOD_CALL !0, 'evalHand' 20 DO_FCALL 0 245 21 ECHO '%0A%0AFourth+Card%3A+As+Ks+Qs+Js+10s%0A%0A' 246 22 NEW $13 'Hand' 23 SEND_VAL_EX 'As+Ks+Qs+Js+10s' 24 DO_FCALL 0 25 ASSIGN !0, $13 247 26 INIT_METHOD_CALL !0, 'evalHand' 27 DO_FCALL 0 28 > RETURN 1 Function %00%7Bclosure%7D%2Fin%2FXnTQ5%3A58%240: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: {closure} number of ops: 5 compiled vars: !0 = $card line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 58 0 E > RECV !0 59 1 INIT_METHOD_CALL !0, 'getVal' 2 DO_FCALL 0 $1 3 > RETURN $1 60 4* > RETURN null End of function %00%7Bclosure%7D%2Fin%2FXnTQ5%3A58%240 Function %00%7Bclosure%7D%2Fin%2FXnTQ5%3A63%241: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: {closure} number of ops: 5 compiled vars: !0 = $card line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 63 0 E > RECV !0 64 1 INIT_METHOD_CALL !0, 'getSuit' 2 DO_FCALL 0 $1 3 > RETURN $1 65 4* > RETURN null End of function %00%7Bclosure%7D%2Fin%2FXnTQ5%3A63%241 Class Card: Function __construct: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: __construct number of ops: 13 compiled vars: !0 = $val, !1 = $suit, !2 = $values, !3 = $suits line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 8 0 E > RECV !0 1 RECV !1 9 2 ASSIGN !2, <array> 16 3 ASSIGN !3, <array> 23 4 FETCH_DIM_R ~7 !3, !1 5 ASSIGN_OBJ 'suit' 6 OP_DATA ~7 24 7 FETCH_DIM_IS ~9 !2, !0 8 COALESCE ~10 ~9 9 QM_ASSIGN ~10 !0 10 ASSIGN_OBJ 'val' 11 OP_DATA ~10 25 12 > RETURN null End of function __construct Function getsuit: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: getSuit number of ops: 3 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 28 0 E > FETCH_OBJ_R ~0 'suit' 1 > RETURN ~0 29 2* > RETURN null End of function getsuit Function getval: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: getVal number of ops: 3 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 32 0 E > FETCH_OBJ_R ~0 'val' 1 > RETURN ~0 33 2* > RETURN null End of function getval Function setval: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: setVal number of ops: 4 compiled vars: !0 = $val line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 35 0 E > RECV !0 36 1 ASSIGN_OBJ 'val' 2 OP_DATA !0 37 3 > RETURN null End of function setval End of class Card. Class Hand: Function __construct: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 77) Position 1 = 7, Position 2 = 30 Branch analysis from position: 7 2 jumps found. (Code = 78) Position 1 = 8, Position 2 = 30 Branch analysis from position: 8 1 jumps found. (Code = 42) Position 1 = 7 Branch analysis from position: 7 Branch analysis from position: 30 2 jumps found. (Code = 43) Position 1 = 67, Position 2 = 69 Branch analysis from position: 67 2 jumps found. (Code = 77) Position 1 = 71, Position 2 = 89 Branch analysis from position: 71 2 jumps found. (Code = 78) Position 1 = 72, Position 2 = 89 Branch analysis from position: 72 2 jumps found. (Code = 43) Position 1 = 75, Position 2 = 78 Branch analysis from position: 75 2 jumps found. (Code = 43) Position 1 = 80, Position 2 = 83 Branch analysis from position: 80 2 jumps found. (Code = 43) Position 1 = 85, Position 2 = 88 Branch analysis from position: 85 1 jumps found. (Code = 42) Position 1 = 71 Branch analysis from position: 71 Branch analysis from position: 88 Branch analysis from position: 83 Branch analysis from position: 78 Branch analysis from position: 89 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 89 Branch analysis from position: 69 Branch analysis from position: 30 filename: /in/XnTQ5 function name: __construct number of ops: 91 compiled vars: !0 = $hand, !1 = $cards, !2 = $card, !3 = $val, !4 = $suit, !5 = $count, !6 = $face line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 48 0 E > RECV !0 49 1 INIT_FCALL 'explode' 2 SEND_VAL '+' 3 SEND_VAR !0 4 DO_ICALL $7 5 ASSIGN !1, $7 51 6 > FE_RESET_R $9 !1, ->30 7 > > FE_FETCH_R $9, !2, ->30 52 8 > INIT_FCALL 'substr' 9 SEND_VAR !2 10 SEND_VAL 0 11 SEND_VAL -1 12 DO_ICALL $10 13 ASSIGN !3, $10 53 14 INIT_FCALL 'strtoupper' 15 INIT_FCALL 'substr' 16 SEND_VAR !2 17 SEND_VAL -1 18 DO_ICALL $12 19 SEND_VAR $12 20 DO_ICALL $13 21 ASSIGN !4, $13 54 22 NEW $17 'Card' 23 SEND_VAR_EX !3 24 SEND_VAR_EX !4 25 DO_FCALL 0 26 FETCH_OBJ_W $15 'cards' 27 ASSIGN_DIM $15 28 OP_DATA $17 51 29 > JMP ->7 30 > FE_FREE $9 58 31 INIT_FCALL 'array_map' 32 DECLARE_LAMBDA_FUNCTION '%00%7Bclosure%7D%2Fin%2FXnTQ5%3A58%240' 60 33 SEND_VAL ~20 34 FETCH_OBJ_R ~21 'cards' 35 SEND_VAL ~21 36 DO_ICALL $22 58 37 ASSIGN_OBJ 'values' 60 38 OP_DATA $22 63 39 INIT_FCALL 'array_map' 40 DECLARE_LAMBDA_FUNCTION '%00%7Bclosure%7D%2Fin%2FXnTQ5%3A63%241' 65 41 SEND_VAL ~24 42 FETCH_OBJ_R ~25 'cards' 43 SEND_VAL ~25 44 DO_ICALL $26 63 45 ASSIGN_OBJ 'suits' 65 46 OP_DATA $26 68 47 ASSIGN_OBJ ~29 'fours' 48 OP_DATA <array> 49 ASSIGN_OBJ ~28 'threes' 50 OP_DATA ~29 51 ASSIGN_OBJ 'pairs' 52 OP_DATA ~28 71 53 ASSIGN_OBJ 'possibleStraight' 54 OP_DATA <true> 73 55 INIT_FCALL 'array_count_values' 56 FETCH_OBJ_R ~32 'values' 57 SEND_VAL ~32 58 DO_ICALL $33 59 ASSIGN_OBJ 'hands' 60 OP_DATA $33 76 61 INIT_FCALL 'max' 62 FETCH_OBJ_R ~34 'hands' 63 SEND_VAL ~34 64 DO_ICALL $35 65 IS_SMALLER 1, $35 66 > JMPZ ~36, ->69 77 67 > ASSIGN_OBJ 'possibleStraight' 68 OP_DATA <false> 81 69 > FETCH_OBJ_R ~38 'hands' 70 > FE_RESET_R $39 ~38, ->89 71 > > FE_FETCH_R ~40 $39, !5, ->89 72 > ASSIGN !6, ~40 83 73 IS_IDENTICAL !5, 2 74 > JMPZ ~42, ->78 84 75 > FETCH_OBJ_W $43 'pairs' 76 ASSIGN_DIM $43 77 OP_DATA !6 88 78 > IS_IDENTICAL !5, 3 79 > JMPZ ~45, ->83 89 80 > FETCH_OBJ_W $46 'threes' 81 ASSIGN_DIM $46 82 OP_DATA !6 93 83 > IS_IDENTICAL !5, 4 84 > JMPZ ~48, ->88 94 85 > FETCH_OBJ_W $49 'fours' 86 ASSIGN_DIM $49 87 OP_DATA !6 81 88 > > JMP ->71 89 > FE_FREE $39 97 90 > RETURN null End of function __construct Function evalhand: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: evalHand number of ops: 51 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 100 0 E > INIT_FCALL 'var_dump' 1 INIT_METHOD_CALL 'getHighCard' 2 DO_FCALL 0 $0 3 SEND_VAR $0 4 DO_ICALL 101 5 INIT_FCALL 'var_dump' 6 INIT_METHOD_CALL 'isOnePair' 7 DO_FCALL 0 $2 8 SEND_VAR $2 9 DO_ICALL 102 10 INIT_FCALL 'var_dump' 11 INIT_METHOD_CALL 'isTwoPair' 12 DO_FCALL 0 $4 13 SEND_VAR $4 14 DO_ICALL 103 15 INIT_FCALL 'var_dump' 16 INIT_METHOD_CALL 'getThrees' 17 DO_FCALL 0 $6 18 SEND_VAR $6 19 DO_ICALL 104 20 INIT_FCALL 'var_dump' 21 INIT_METHOD_CALL 'getFours' 22 DO_FCALL 0 $8 23 SEND_VAR $8 24 DO_ICALL 105 25 INIT_FCALL 'var_dump' 26 INIT_METHOD_CALL 'isFullHouse' 27 DO_FCALL 0 $10 28 SEND_VAR $10 29 DO_ICALL 106 30 INIT_FCALL 'var_dump' 31 INIT_METHOD_CALL 'isFlush' 32 DO_FCALL 0 $12 33 SEND_VAR $12 34 DO_ICALL 107 35 INIT_FCALL 'var_dump' 36 INIT_METHOD_CALL 'isStraight' 37 DO_FCALL 0 $14 38 SEND_VAR $14 39 DO_ICALL 108 40 INIT_FCALL 'var_dump' 41 INIT_METHOD_CALL 'isStraightFlush' 42 DO_FCALL 0 $16 43 SEND_VAR $16 44 DO_ICALL 109 45 INIT_FCALL 'var_dump' 46 INIT_METHOD_CALL 'isRoyalFlush' 47 DO_FCALL 0 $18 48 SEND_VAR $18 49 DO_ICALL 110 50 > RETURN null End of function evalhand Function getcards: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: getCards number of ops: 3 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 113 0 E > FETCH_OBJ_R ~0 'cards' 1 > RETURN ~0 114 2* > RETURN null End of function getcards Function getvalues: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: getValues number of ops: 3 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 117 0 E > FETCH_OBJ_R ~0 'values' 1 > RETURN ~0 118 2* > RETURN null End of function getvalues Function getsuits: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: getSuits number of ops: 3 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 121 0 E > FETCH_OBJ_R ~0 'suits' 1 > RETURN ~0 122 2* > RETURN null End of function getsuits Function gethighcard: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: getHighCard number of ops: 7 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 125 0 E > INIT_FCALL 'max' 1 INIT_METHOD_CALL 'getValues' 2 DO_FCALL 0 $0 3 SEND_VAR $0 4 DO_ICALL $1 5 > RETURN $1 126 6* > RETURN null End of function gethighcard Function getpairs: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: getPairs number of ops: 3 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 129 0 E > FETCH_OBJ_R ~0 'pairs' 1 > RETURN ~0 130 2* > RETURN null End of function getpairs Function isonepair: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 43) Position 1 = 4, Position 2 = 6 Branch analysis from position: 4 1 jumps found. (Code = 42) Position 1 = 7 Branch analysis from position: 7 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 6 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: isOnePair number of ops: 9 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 133 0 E > FETCH_OBJ_R ~0 'pairs' 1 COUNT ~1 ~0 2 IS_EQUAL ~1, 1 3 > JMPZ ~2, ->6 4 > QM_ASSIGN ~3 <true> 5 > JMP ->7 6 > QM_ASSIGN ~3 <false> 7 > > RETURN ~3 134 8* > RETURN null End of function isonepair Function istwopair: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 43) Position 1 = 4, Position 2 = 6 Branch analysis from position: 4 1 jumps found. (Code = 42) Position 1 = 7 Branch analysis from position: 7 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 6 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: isTwoPair number of ops: 9 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 137 0 E > FETCH_OBJ_R ~0 'pairs' 1 COUNT ~1 ~0 2 IS_EQUAL ~1, 2 3 > JMPZ ~2, ->6 4 > QM_ASSIGN ~3 <true> 5 > JMP ->7 6 > QM_ASSIGN ~3 <false> 7 > > RETURN ~3 138 8* > RETURN null End of function istwopair Function getthrees: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: getThrees number of ops: 3 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 141 0 E > FETCH_OBJ_R ~0 'threes' 1 > RETURN ~0 142 2* > RETURN null End of function getthrees Function getfours: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: getFours number of ops: 3 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 145 0 E > FETCH_OBJ_R ~0 'fours' 1 > RETURN ~0 146 2* > RETURN null End of function getfours Function hasace: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/XnTQ5 function name: hasAce number of ops: 4 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 149 0 E > FETCH_OBJ_IS ~0 'hands' 1 ISSET_ISEMPTY_DIM_OBJ 0 ~1 ~0, 14 2 > RETURN ~1 150 3* > RETURN null End of function hasace Function isfullhouse: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 46) Position 1 = 4, Position 2 = 8 Branch analysis from position: 4 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 8 filename: /in/XnTQ5 function name: isFullHouse number of ops: 10 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 153 0 E > FETCH_OBJ_R ~0 'pairs' 1 COUNT ~1 ~0 2 IS_EQUAL ~2 ~1, 1 3 > JMPZ_EX ~2 ~2, ->8 4 > FETCH_OBJ_R ~3 'threes' 5 COUNT ~4 ~3 6 IS_EQUAL ~5 ~4, 1 7 BOOL ~2 ~5 8 > > RETURN ~2 154 9* > RETURN null End of function isfullhouse Function isflush: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 77) Position 1 = 7, Position 2 = 20 Branch analysis from position: 7 2 jumps found. (Code = 78) Position 1 = 8, Position 2 = 20 Branch analysis from position: 8 2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 15 Branch analysis from position: 11 1 jumps found. (Code = 42) Position 1 = 18 Branch analysis from position: 18 1 jumps found. (Code = 42) Position 1 = 7 Branch analysis from position: 7 Branch analysis from position: 15 1 jumps found. (Code = 42) Position 1 = 7 Branch analysis from position: 7 Branch analysis from position: 20 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 20 filename: /in/XnTQ5 function name: isFlush number of ops: 24 compiled vars: !0 = $suits, !1 = $count, !2 = $face line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 157 0 E > INIT_FCALL 'array_count_v
Generated using Vulcan Logic Dumper, using php 8.0.0