|
|
|
/* @generated */
|
|
|
|
digraph cfg {
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_1" [label="1: Start test\nFormals: a2:PropertyA*\nLocals: a:PropertyA* \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_1" -> "test.098f6bcd4621d373cade4e832627b4f6_6" ;
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_2" [label="2: Exit test \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_3" [label="3: Return Stmt \n *&return:int=0 [line 44, column 3]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_3" -> "test.098f6bcd4621d373cade4e832627b4f6_2" ;
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_4" [label="4: Message Call: release \n n$0=*&a:PropertyA* [line 43, column 4]\n n$1=_fun_NSObject.release(n$0:PropertyA*) virtual [line 43, column 3]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_4" -> "test.098f6bcd4621d373cade4e832627b4f6_3" ;
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_5" [label="5: Message Call: setLast_name: \n n$3=*&a:PropertyA* [line 42, column 3]\n n$2=*&a2:PropertyA* [line 42, column 17]\n n$4=_fun_PropertyA.setLast_name:(n$3:PropertyA*,n$2:PropertyA*) [line 42, column 5]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_5" -> "test.098f6bcd4621d373cade4e832627b4f6_4" ;
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_6" [label="6: DeclStmt \n VARIABLE_DECLARED(a:PropertyA*); [line 41, column 3]\n n$5=_fun___objc_alloc_no_fail(sizeof(t=PropertyA):unsigned long) [line 41, column 19]\n n$6=_fun_PropertyA.init(n$5:PropertyA*) virtual [line 41, column 18]\n *&a:PropertyA*=n$6 [line 41, column 3]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"test.098f6bcd4621d373cade4e832627b4f6_6" -> "test.098f6bcd4621d373cade4e832627b4f6_5" ;
|
|
|
|
"child#PropertyA#instance.6f8ba5a5a49be48cc5dabe234a5b1918_1" [label="1: Start PropertyA.child\nFormals: self:PropertyA*\nLocals: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"child#PropertyA#instance.6f8ba5a5a49be48cc5dabe234a5b1918_1" -> "child#PropertyA#instance.6f8ba5a5a49be48cc5dabe234a5b1918_3" ;
|
|
|
|
"child#PropertyA#instance.6f8ba5a5a49be48cc5dabe234a5b1918_2" [label="2: Exit PropertyA.child \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"child#PropertyA#instance.6f8ba5a5a49be48cc5dabe234a5b1918_3" [label="3: BinaryOperatorStmt: Node \n n$13=*&self:PropertyA* [line 12, column 39]\n n$14=*n$13._child:PropertyA* [line 12, column 39]\n *&return:PropertyA*=n$14 [line 12, column 39]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"child#PropertyA#instance.6f8ba5a5a49be48cc5dabe234a5b1918_3" -> "child#PropertyA#instance.6f8ba5a5a49be48cc5dabe234a5b1918_2" ;
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_1" [label="1: Start PropertyA.copy\nFormals: self:PropertyA*\nLocals: other:PropertyA* \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_1" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" ;
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_2" [label="2: Exit PropertyA.copy \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_3" [label="3: Return Stmt \n n$1=*&other:PropertyA* [line 35, column 10]\n *&return:PropertyA*=n$1 [line 35, column 3]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_3" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_2" ;
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_4" [label="4: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_4" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_3" ;
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_5" [label="5: Prune (true branch, if) \n n$2=*&other:PropertyA* [line 30, column 7]\n PRUNE(n$2, true); [line 30, column 7]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_5" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_9" ;
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_6" [label="6: Prune (false branch, if) \n n$2=*&other:PropertyA* [line 30, column 7]\n PRUNE(!n$2, false); [line 30, column 7]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_6" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_4" ;
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_7" [label="7: BinaryOperatorStmt: Assign \n n$3=*&other:PropertyA* [line 33, column 5]\n n$4=*&self:PropertyA* [line 33, column 21]\n n$5=*n$4._child:PropertyA* [line 33, column 21]\n *n$3._child:PropertyA*=n$5 [line 33, column 5]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_7" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_4" ;
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_8" [label="8: BinaryOperatorStmt: Assign \n n$6=*&other:PropertyA* [line 32, column 5]\n n$7=*&self:PropertyA* [line 32, column 25]\n n$8=*n$7._last_name:PropertyA* [line 32, column 25]\n *n$6._last_name:PropertyA*=n$8 [line 32, column 5]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_8" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_7" ;
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_9" [label="9: BinaryOperatorStmt: Assign \n n$9=*&other:PropertyA* [line 31, column 5]\n n$10=*&self:PropertyA* [line 31, column 20]\n n$11=*n$10._name:PropertyA* [line 31, column 20]\n *n$9._name:PropertyA*=n$11 [line 31, column 5]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_9" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_8" ;
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" [label="10: DeclStmt \n VARIABLE_DECLARED(other:PropertyA*); [line 29, column 3]\n n$14=_fun___objc_alloc_no_fail(sizeof(t=PropertyA):unsigned long) [line 29, column 23]\n n$15=_fun_PropertyA.init(n$14:PropertyA*) virtual [line 29, column 22]\n *&other:PropertyA*=n$15 [line 29, column 3]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_5" ;
|
|
|
|
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_6" ;
|
|
|
|
"dealloc#PropertyA#instance.6f8be74d1c8a16eeeed561e5def4ae54_1" [label="1: Start PropertyA.dealloc\nFormals: self:PropertyA*\nLocals: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"dealloc#PropertyA#instance.6f8be74d1c8a16eeeed561e5def4ae54_1" -> "dealloc#PropertyA#instance.6f8be74d1c8a16eeeed561e5def4ae54_3" ;
|
|
|
|
"dealloc#PropertyA#instance.6f8be74d1c8a16eeeed561e5def4ae54_2" [label="2: Exit PropertyA.dealloc \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"dealloc#PropertyA#instance.6f8be74d1c8a16eeeed561e5def4ae54_3" [label="3: Call dealloc \n n$0=*&self:PropertyA* [line 38, column 1]\n n$1=*n$0._last_name:PropertyA* [line 38, column 1]\n n$2=_fun_PropertyA.dealloc(n$1:PropertyA*) [line 38, column 1]\n n$3=*&self:PropertyA* [line 38, column 1]\n n$4=*n$3._name:PropertyA* [line 38, column 1]\n n$5=_fun_PropertyA.dealloc(n$4:PropertyA*) [line 38, column 1]\n n$6=*&self:PropertyA* [line 38, column 1]\n n$7=*n$6._child:PropertyA* [line 38, column 1]\n n$8=_fun_PropertyA.dealloc(n$7:PropertyA*) [line 38, column 1]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"dealloc#PropertyA#instance.6f8be74d1c8a16eeeed561e5def4ae54_3" -> "dealloc#PropertyA#instance.6f8be74d1c8a16eeeed561e5def4ae54_2" ;
|
|
|
|
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_1" [label="1: Start PropertyA.init\nFormals: self:PropertyA*\nLocals: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_1" -> "init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_3" ;
|
|
|
|
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_2" [label="2: Exit PropertyA.init \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_3" [label="3: Return Stmt \n n$0=*&self:PropertyA* [line 25, column 10]\n *&return:objc_object*=n$0 [line 25, column 3]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_3" -> "init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_2" ;
|
|
|
|
"last_name#PropertyA#instance.1ce5ad70e2d4c718c3a98ccc959a3bc9_1" [label="1: Start PropertyA.last_name\nFormals: self:PropertyA*\nLocals: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"last_name#PropertyA#instance.1ce5ad70e2d4c718c3a98ccc959a3bc9_1" -> "last_name#PropertyA#instance.1ce5ad70e2d4c718c3a98ccc959a3bc9_3" ;
|
|
|
|
"last_name#PropertyA#instance.1ce5ad70e2d4c718c3a98ccc959a3bc9_2" [label="2: Exit PropertyA.last_name \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"last_name#PropertyA#instance.1ce5ad70e2d4c718c3a98ccc959a3bc9_3" [label="3: BinaryOperatorStmt: Node \n n$19=*&self:PropertyA* [line 16, column 52]\n n$20=*n$19._last_name:PropertyA* [line 16, column 52]\n *&return:PropertyA*=n$20 [line 16, column 52]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"last_name#PropertyA#instance.1ce5ad70e2d4c718c3a98ccc959a3bc9_3" -> "last_name#PropertyA#instance.1ce5ad70e2d4c718c3a98ccc959a3bc9_2" ;
|
|
|
|
"name#PropertyA#instance.c1cdbf324fa14cda26c4633e95fc7667_1" [label="1: Start PropertyA.name\nFormals: self:PropertyA*\nLocals: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"name#PropertyA#instance.c1cdbf324fa14cda26c4633e95fc7667_1" -> "name#PropertyA#instance.c1cdbf324fa14cda26c4633e95fc7667_3" ;
|
|
|
|
"name#PropertyA#instance.c1cdbf324fa14cda26c4633e95fc7667_2" [label="2: Exit PropertyA.name \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"name#PropertyA#instance.c1cdbf324fa14cda26c4633e95fc7667_3" [label="3: BinaryOperatorStmt: Node \n n$11=*&self:PropertyA* [line 14, column 41]\n n$12=*n$11._name:PropertyA* [line 14, column 41]\n *&return:PropertyA*=n$12 [line 14, column 41]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"name#PropertyA#instance.c1cdbf324fa14cda26c4633e95fc7667_3" -> "name#PropertyA#instance.c1cdbf324fa14cda26c4633e95fc7667_2" ;
|
|
|
|
"setChild:#PropertyA(class PropertyA)#instance.2830b91fc93649a2fb3b313489bf5461_1" [label="1: Start PropertyA.setChild:\nFormals: self:PropertyA* child:PropertyA*\nLocals: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"setChild:#PropertyA(class PropertyA)#instance.2830b91fc93649a2fb3b313489bf5461_1" -> "setChild:#PropertyA(class PropertyA)#instance.2830b91fc93649a2fb3b313489bf5461_3" ;
|
|
|
|
"setChild:#PropertyA(class PropertyA)#instance.2830b91fc93649a2fb3b313489bf5461_2" [label="2: Exit PropertyA.setChild: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"setChild:#PropertyA(class PropertyA)#instance.2830b91fc93649a2fb3b313489bf5461_3" [label="3: BinaryOperatorStmt: Node \n n$17=*&self:PropertyA* [line 12, column 39]\n n$18=*&child:PropertyA* [line 12, column 39]\n *n$17._child:PropertyA*=n$18 [line 12, column 39]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"setChild:#PropertyA(class PropertyA)#instance.2830b91fc93649a2fb3b313489bf5461_3" -> "setChild:#PropertyA(class PropertyA)#instance.2830b91fc93649a2fb3b313489bf5461_2" ;
|
|
|
|
"setLast_name:#PropertyA(class PropertyA)#instance.47d6f73ea37f95beeca8ce7a0352c15f_1" [label="1: Start PropertyA.setLast_name:\nFormals: self:PropertyA* last_name:PropertyA*\nLocals: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"setLast_name:#PropertyA(class PropertyA)#instance.47d6f73ea37f95beeca8ce7a0352c15f_1" -> "setLast_name:#PropertyA(class PropertyA)#instance.47d6f73ea37f95beeca8ce7a0352c15f_3" ;
|
|
|
|
"setLast_name:#PropertyA(class PropertyA)#instance.47d6f73ea37f95beeca8ce7a0352c15f_2" [label="2: Exit PropertyA.setLast_name: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"setLast_name:#PropertyA(class PropertyA)#instance.47d6f73ea37f95beeca8ce7a0352c15f_3" [label="3: BinaryOperatorStmt: Node \n n$15=*&self:PropertyA* [line 16, column 52]\n n$16=*&last_name:PropertyA* [line 16, column 52]\n *n$15._last_name:PropertyA*=n$16 [line 16, column 52]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"setLast_name:#PropertyA(class PropertyA)#instance.47d6f73ea37f95beeca8ce7a0352c15f_3" -> "setLast_name:#PropertyA(class PropertyA)#instance.47d6f73ea37f95beeca8ce7a0352c15f_2" ;
|
|
|
|
"setName:#PropertyA(class PropertyA)#instance.530a6c9eaa83786feeaf3a50fc2cd0e6_1" [label="1: Start PropertyA.setName:\nFormals: self:PropertyA* name:PropertyA*\nLocals: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"setName:#PropertyA(class PropertyA)#instance.530a6c9eaa83786feeaf3a50fc2cd0e6_1" -> "setName:#PropertyA(class PropertyA)#instance.530a6c9eaa83786feeaf3a50fc2cd0e6_3" ;
|
|
|
|
"setName:#PropertyA(class PropertyA)#instance.530a6c9eaa83786feeaf3a50fc2cd0e6_2" [label="2: Exit PropertyA.setName: \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"setName:#PropertyA(class PropertyA)#instance.530a6c9eaa83786feeaf3a50fc2cd0e6_3" [label="3: BinaryOperatorStmt: Node \n n$9=*&self:PropertyA* [line 14, column 41]\n n$10=*&name:PropertyA* [line 14, column 41]\n *n$9._name:PropertyA*=n$10 [line 14, column 41]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"setName:#PropertyA(class PropertyA)#instance.530a6c9eaa83786feeaf3a50fc2cd0e6_3" -> "setName:#PropertyA(class PropertyA)#instance.530a6c9eaa83786feeaf3a50fc2cd0e6_2" ;
|
|
|
|
}
|