Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/YW00P function name: (null) number of ops: 3 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 86 0 E > INIT_NS_FCALL_BY_NAME 'RefactoringGuru%5CPrototype%5CConceptual%5CclientCode' 1 DO_FCALL 0 2 > RETURN 1 Function refactoringguru%5Cprototype%5Cconceptual%5Cclientcode: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 43) Position 1 = 20, Position 2 = 22 Branch analysis from position: 20 1 jumps found. (Code = 42) Position 1 = 23 Branch analysis from position: 23 2 jumps found. (Code = 43) Position 1 = 27, Position 2 = 29 Branch analysis from position: 27 1 jumps found. (Code = 42) Position 1 = 30 Branch analysis from position: 30 2 jumps found. (Code = 43) Position 1 = 34, Position 2 = 36 Branch analysis from position: 34 1 jumps found. (Code = 42) Position 1 = 37 Branch analysis from position: 37 2 jumps found. (Code = 43) Position 1 = 43, Position 2 = 45 Branch analysis from position: 43 1 jumps found. (Code = 42) Position 1 = 46 Branch analysis from position: 46 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 45 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 36 2 jumps found. (Code = 43) Position 1 = 43, Position 2 = 45 Branch analysis from position: 43 Branch analysis from position: 45 Branch analysis from position: 29 2 jumps found. (Code = 43) Position 1 = 34, Position 2 = 36 Branch analysis from position: 34 Branch analysis from position: 36 Branch analysis from position: 22 2 jumps found. (Code = 43) Position 1 = 27, Position 2 = 29 Branch analysis from position: 27 Branch analysis from position: 29 filename: /in/YW00P function name: RefactoringGuru\Prototype\Conceptual\clientCode number of ops: 47 compiled vars: !0 = $p1, !1 = $p2 line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 56 0 E > NEW $2 'RefactoringGuru%5CPrototype%5CConceptual%5CPrototype' 1 DO_FCALL 0 2 ASSIGN !0, $2 57 3 ASSIGN_OBJ !0, 'primitive' 4 OP_DATA 245 58 5 NEW $7 'DateTime' 6 DO_FCALL 0 7 ASSIGN_OBJ !0, 'component' 8 OP_DATA $7 59 9 NEW $10 'RefactoringGuru%5CPrototype%5CConceptual%5CComponentWithBackReference' 10 SEND_VAR_EX !0 11 DO_FCALL 0 12 ASSIGN_OBJ !0, 'circularReference' 13 OP_DATA $10 61 14 CLONE ~12 !0 15 ASSIGN !1, ~12 62 16 FETCH_OBJ_R ~14 !0, 'primitive' 17 FETCH_OBJ_R ~15 !1, 'primitive' 18 IS_IDENTICAL ~14, ~15 19 > JMPZ ~16, ->22 63 20 > ECHO 'Primitive+field+values+have+been+carried+over+to+a+clone.+Yay%21%0A' 21 > JMP ->23 65 22 > ECHO 'Primitive+field+values+have+not+been+copied.+Booo%21%0A' 67 23 > FETCH_OBJ_R ~17 !0, 'component' 24 FETCH_OBJ_R ~18 !1, 'component' 25 IS_IDENTICAL ~17, ~18 26 > JMPZ ~19, ->29 68 27 > ECHO 'Simple+component+has+not+been+cloned.+Booo%21%0A' 28 > JMP ->30 70 29 > ECHO 'Simple+component+has+been+cloned.+Yay%21%0A' 73 30 > FETCH_OBJ_R ~20 !0, 'circularReference' 31 FETCH_OBJ_R ~21 !1, 'circularReference' 32 IS_IDENTICAL ~20, ~21 33 > JMPZ ~22, ->36 74 34 > ECHO 'Component+with+back+reference+has+not+been+cloned.+Booo%21%0A' 35 > JMP ->37 76 36 > ECHO 'Component+with+back+reference+has+been+cloned.+Yay%21%0A' 79 37 > FETCH_OBJ_R ~23 !0, 'circularReference' 38 FETCH_OBJ_R ~24 ~23, 'prototype' 39 FETCH_OBJ_R ~25 !1, 'circularReference' 40 FETCH_OBJ_R ~26 ~25, 'prototype' 41 IS_IDENTICAL ~24, ~26 42 > JMPZ ~27, ->45 80 43 > ECHO 'Component+with+back+reference+is+linked+to+original+object.+Booo%21%0A' 44 > JMP ->46 82 45 > ECHO 'Component+with+back+reference+is+linked+to+the+clone.+Yay%21%0A' 84 46 > > RETURN null End of function refactoringguru%5Cprototype%5Cconceptual%5Cclientcode Class RefactoringGuru\Prototype\Conceptual\Prototype: Function __clone: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/YW00P function name: __clone number of ops: 13 compiled vars: none line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 25 0 E > FETCH_OBJ_R ~1 'component' 1 CLONE ~2 ~1 2 ASSIGN_OBJ 'component' 3 OP_DATA ~2 31 4 FETCH_OBJ_R ~4 'circularReference' 5 CLONE ~5 ~4 6 ASSIGN_OBJ 'circularReference' 7 OP_DATA ~5 32 8 FETCH_THIS ~8 9 FETCH_OBJ_W $6 'circularReference' 10 ASSIGN_OBJ $6, 'prototype' 11 OP_DATA ~8 33 12 > RETURN null End of function __clone End of class RefactoringGuru\Prototype\Conceptual\Prototype. Class RefactoringGuru\Prototype\Conceptual\ComponentWithBackReference: Function __construct: Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 62) Position 1 = -2 filename: /in/YW00P function name: __construct number of ops: 4 compiled vars: !0 = $prototype line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 45 0 E > RECV !0 47 1 ASSIGN_OBJ 'prototype' 2 OP_DATA !0 48 3 > RETURN null End of function __construct End of class RefactoringGuru\Prototype\Conceptual\ComponentWithBackReference.
Generated using Vulcan Logic Dumper, using php 8.0.0