svf-tools 1.0.781 → 1.0.783

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/SVF-doxygen/html/html/CDG_8h.html +2 -2
  2. package/SVF-doxygen/html/html/CDG_8h_source.html +2 -2
  3. package/SVF-doxygen/html/html/CFBasicBlockG_8cpp_source.html +152 -90
  4. package/SVF-doxygen/html/html/CFBasicBlockG_8h.html +3 -1
  5. package/SVF-doxygen/html/html/CFBasicBlockG_8h_source.html +601 -260
  6. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +4 -4
  7. package/SVF-doxygen/html/html/ExtAPI_8cpp.html +50 -50
  8. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +180 -181
  9. package/SVF-doxygen/html/html/ExtAPI_8h.html +6 -6
  10. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +13 -13
  11. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +1 -1
  12. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +1 -1
  13. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +1 -1
  14. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +7 -7
  15. package/SVF-doxygen/html/html/WTO_8h_source.html +6 -6
  16. package/SVF-doxygen/html/html/annotated.html +325 -333
  17. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockEdge-members.html +19 -12
  18. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockEdge.html +219 -30
  19. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockGBuilder-members.html +4 -3
  20. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockGBuilder.html +147 -39
  21. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockGWTOCycle.html +1 -1
  22. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockGWTONode.html +1 -1
  23. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockGraph-members.html +32 -28
  24. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockGraph.html +382 -184
  25. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockNode-members.html +51 -41
  26. package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockNode.html +1244 -159
  27. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode-members.html +34 -34
  28. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +65 -25
  29. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI-members.html +1 -1
  30. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +107 -107
  31. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.html +4 -5
  32. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.png +0 -0
  33. package/SVF-doxygen/html/html/classSVF_1_1GenericGraph.html +3 -4
  34. package/SVF-doxygen/html/html/classSVF_1_1GenericGraph.png +0 -0
  35. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +10 -10
  36. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
  37. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +1 -1
  38. package/SVF-doxygen/html/html/classes.html +266 -276
  39. package/SVF-doxygen/html/html/dir_a10fe8a299b5f0831d187a9a2e1308ef.html +0 -2
  40. package/SVF-doxygen/html/html/dir_fc0329f850c815763e0c5b05933e8d55.html +0 -2
  41. package/SVF-doxygen/html/html/files.html +19 -21
  42. package/SVF-doxygen/html/html/functions.html +2 -33
  43. package/SVF-doxygen/html/html/functions_a.html +14 -16
  44. package/SVF-doxygen/html/html/functions_b.html +8 -9
  45. package/SVF-doxygen/html/html/functions_c.html +34 -31
  46. package/SVF-doxygen/html/html/functions_d.html +11 -13
  47. package/SVF-doxygen/html/html/functions_e.html +1 -1
  48. package/SVF-doxygen/html/html/functions_func.html +16 -18
  49. package/SVF-doxygen/html/html/functions_func_b.html +2 -3
  50. package/SVF-doxygen/html/html/functions_func_c.html +31 -31
  51. package/SVF-doxygen/html/html/functions_func_d.html +10 -12
  52. package/SVF-doxygen/html/html/functions_func_g.html +22 -59
  53. package/SVF-doxygen/html/html/functions_func_h.html +9 -12
  54. package/SVF-doxygen/html/html/functions_func_i.html +13 -26
  55. package/SVF-doxygen/html/html/functions_func_o.html +9 -9
  56. package/SVF-doxygen/html/html/functions_func_p.html +1 -1
  57. package/SVF-doxygen/html/html/functions_func_r.html +15 -15
  58. package/SVF-doxygen/html/html/functions_func_s.html +20 -29
  59. package/SVF-doxygen/html/html/functions_func_t.html +0 -2
  60. package/SVF-doxygen/html/html/functions_func_v.html +2 -3
  61. package/SVF-doxygen/html/html/functions_func_~.html +0 -12
  62. package/SVF-doxygen/html/html/functions_g.html +23 -60
  63. package/SVF-doxygen/html/html/functions_h.html +9 -12
  64. package/SVF-doxygen/html/html/functions_i.html +16 -44
  65. package/SVF-doxygen/html/html/functions_n.html +6 -8
  66. package/SVF-doxygen/html/html/functions_o.html +23 -27
  67. package/SVF-doxygen/html/html/functions_p.html +8 -12
  68. package/SVF-doxygen/html/html/functions_r.html +17 -17
  69. package/SVF-doxygen/html/html/functions_s.html +16 -33
  70. package/SVF-doxygen/html/html/functions_t.html +5 -7
  71. package/SVF-doxygen/html/html/functions_type_c.html +6 -3
  72. package/SVF-doxygen/html/html/functions_type_e.html +1 -1
  73. package/SVF-doxygen/html/html/functions_type_i.html +3 -18
  74. package/SVF-doxygen/html/html/functions_type_n.html +0 -2
  75. package/SVF-doxygen/html/html/functions_type_s.html +0 -6
  76. package/SVF-doxygen/html/html/functions_v.html +4 -5
  77. package/SVF-doxygen/html/html/functions_vars.html +2 -33
  78. package/SVF-doxygen/html/html/functions_vars_i.html +2 -2
  79. package/SVF-doxygen/html/html/functions_vars_o.html +2 -2
  80. package/SVF-doxygen/html/html/functions_w.html +8 -8
  81. package/SVF-doxygen/html/html/functions_~.html +0 -12
  82. package/SVF-doxygen/html/html/globals_d.html +2 -2
  83. package/SVF-doxygen/html/html/globals_defs.html +2 -2
  84. package/SVF-doxygen/html/html/hierarchy.html +458 -469
  85. package/SVF-doxygen/html/html/namespaceSVF.html +7 -78
  86. package/SVF-doxygen/html/html/namespacemembers_g.html +3 -12
  87. package/SVF-doxygen/html/html/namespacemembers_n.html +1 -1
  88. package/SVF-doxygen/html/html/namespacemembers_type_g.html +0 -9
  89. package/SVF-doxygen/html/html/namespacemembers_type_n.html +1 -1
  90. package/SVF-doxygen/html/html/search/all_0.js +137 -147
  91. package/SVF-doxygen/html/html/search/all_1.js +484 -485
  92. package/SVF-doxygen/html/html/search/all_10.js +324 -324
  93. package/SVF-doxygen/html/html/search/all_11.js +224 -224
  94. package/SVF-doxygen/html/html/search/all_12.js +541 -546
  95. package/SVF-doxygen/html/html/search/all_13.js +190 -190
  96. package/SVF-doxygen/html/html/search/all_14.js +67 -67
  97. package/SVF-doxygen/html/html/search/all_15.js +170 -170
  98. package/SVF-doxygen/html/html/search/all_16.js +63 -63
  99. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  100. package/SVF-doxygen/html/html/search/all_18.js +1 -1
  101. package/SVF-doxygen/html/html/search/all_19.js +11 -11
  102. package/SVF-doxygen/html/html/search/all_1a.js +172 -176
  103. package/SVF-doxygen/html/html/search/all_2.js +167 -167
  104. package/SVF-doxygen/html/html/search/all_3.js +640 -639
  105. package/SVF-doxygen/html/html/search/all_4.js +233 -234
  106. package/SVF-doxygen/html/html/search/all_5.js +121 -120
  107. package/SVF-doxygen/html/html/search/all_6.js +225 -225
  108. package/SVF-doxygen/html/html/search/all_7.js +1037 -1056
  109. package/SVF-doxygen/html/html/search/all_8.js +194 -195
  110. package/SVF-doxygen/html/html/search/all_9.js +607 -617
  111. package/SVF-doxygen/html/html/search/all_a.js +46 -46
  112. package/SVF-doxygen/html/html/search/all_b.js +26 -26
  113. package/SVF-doxygen/html/html/search/all_c.js +116 -116
  114. package/SVF-doxygen/html/html/search/all_d.js +196 -196
  115. package/SVF-doxygen/html/html/search/all_e.js +207 -207
  116. package/SVF-doxygen/html/html/search/all_f.js +116 -116
  117. package/SVF-doxygen/html/html/search/classes_0.js +26 -26
  118. package/SVF-doxygen/html/html/search/classes_1.js +9 -9
  119. package/SVF-doxygen/html/html/search/classes_10.js +73 -73
  120. package/SVF-doxygen/html/html/search/classes_11.js +15 -15
  121. package/SVF-doxygen/html/html/search/classes_12.js +2 -2
  122. package/SVF-doxygen/html/html/search/classes_13.js +10 -10
  123. package/SVF-doxygen/html/html/search/classes_14.js +14 -14
  124. package/SVF-doxygen/html/html/search/classes_15.js +1 -1
  125. package/SVF-doxygen/html/html/search/classes_2.js +80 -80
  126. package/SVF-doxygen/html/html/search/classes_3.js +37 -38
  127. package/SVF-doxygen/html/html/search/classes_4.js +9 -9
  128. package/SVF-doxygen/html/html/search/classes_5.js +28 -28
  129. package/SVF-doxygen/html/html/search/classes_6.js +104 -110
  130. package/SVF-doxygen/html/html/search/classes_7.js +33 -33
  131. package/SVF-doxygen/html/html/search/classes_8.js +56 -60
  132. package/SVF-doxygen/html/html/search/classes_9.js +1 -1
  133. package/SVF-doxygen/html/html/search/classes_a.js +12 -12
  134. package/SVF-doxygen/html/html/search/classes_b.js +29 -29
  135. package/SVF-doxygen/html/html/search/classes_c.js +6 -6
  136. package/SVF-doxygen/html/html/search/classes_d.js +18 -18
  137. package/SVF-doxygen/html/html/search/classes_e.js +36 -36
  138. package/SVF-doxygen/html/html/search/classes_f.js +25 -25
  139. package/SVF-doxygen/html/html/search/defines_0.js +3 -3
  140. package/SVF-doxygen/html/html/search/defines_1.js +2 -2
  141. package/SVF-doxygen/html/html/search/defines_2.js +30 -30
  142. package/SVF-doxygen/html/html/search/defines_3.js +21 -21
  143. package/SVF-doxygen/html/html/search/defines_4.js +2 -2
  144. package/SVF-doxygen/html/html/search/defines_5.js +4 -4
  145. package/SVF-doxygen/html/html/search/defines_6.js +2 -2
  146. package/SVF-doxygen/html/html/search/defines_7.js +5 -5
  147. package/SVF-doxygen/html/html/search/defines_8.js +11 -11
  148. package/SVF-doxygen/html/html/search/defines_9.js +9 -9
  149. package/SVF-doxygen/html/html/search/defines_a.js +2 -2
  150. package/SVF-doxygen/html/html/search/defines_b.js +1 -1
  151. package/SVF-doxygen/html/html/search/defines_c.js +3 -3
  152. package/SVF-doxygen/html/html/search/defines_d.js +2 -2
  153. package/SVF-doxygen/html/html/search/defines_e.js +7 -7
  154. package/SVF-doxygen/html/html/search/defines_f.js +3 -3
  155. package/SVF-doxygen/html/html/search/enums_0.js +3 -3
  156. package/SVF-doxygen/html/html/search/enums_1.js +2 -2
  157. package/SVF-doxygen/html/html/search/enums_10.js +1 -1
  158. package/SVF-doxygen/html/html/search/enums_11.js +1 -1
  159. package/SVF-doxygen/html/html/search/enums_2.js +8 -8
  160. package/SVF-doxygen/html/html/search/enums_3.js +1 -1
  161. package/SVF-doxygen/html/html/search/enums_4.js +3 -3
  162. package/SVF-doxygen/html/html/search/enums_5.js +1 -1
  163. package/SVF-doxygen/html/html/search/enums_6.js +2 -2
  164. package/SVF-doxygen/html/html/search/enums_7.js +2 -2
  165. package/SVF-doxygen/html/html/search/enums_8.js +4 -4
  166. package/SVF-doxygen/html/html/search/enums_9.js +1 -1
  167. package/SVF-doxygen/html/html/search/enums_a.js +1 -1
  168. package/SVF-doxygen/html/html/search/enums_b.js +7 -7
  169. package/SVF-doxygen/html/html/search/enums_c.js +1 -1
  170. package/SVF-doxygen/html/html/search/enums_d.js +4 -4
  171. package/SVF-doxygen/html/html/search/enums_e.js +2 -2
  172. package/SVF-doxygen/html/html/search/enums_f.js +4 -4
  173. package/SVF-doxygen/html/html/search/enumvalues_0.js +14 -14
  174. package/SVF-doxygen/html/html/search/enumvalues_1.js +14 -14
  175. package/SVF-doxygen/html/html/search/enumvalues_10.js +35 -35
  176. package/SVF-doxygen/html/html/search/enumvalues_11.js +3 -3
  177. package/SVF-doxygen/html/html/search/enumvalues_12.js +10 -10
  178. package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
  179. package/SVF-doxygen/html/html/search/enumvalues_14.js +1 -1
  180. package/SVF-doxygen/html/html/search/enumvalues_15.js +3 -3
  181. package/SVF-doxygen/html/html/search/enumvalues_2.js +36 -36
  182. package/SVF-doxygen/html/html/search/enumvalues_3.js +13 -13
  183. package/SVF-doxygen/html/html/search/enumvalues_4.js +2 -2
  184. package/SVF-doxygen/html/html/search/enumvalues_5.js +47 -47
  185. package/SVF-doxygen/html/html/search/enumvalues_6.js +6 -6
  186. package/SVF-doxygen/html/html/search/enumvalues_7.js +9 -9
  187. package/SVF-doxygen/html/html/search/enumvalues_8.js +23 -23
  188. package/SVF-doxygen/html/html/search/enumvalues_9.js +6 -6
  189. package/SVF-doxygen/html/html/search/enumvalues_a.js +15 -15
  190. package/SVF-doxygen/html/html/search/enumvalues_b.js +11 -11
  191. package/SVF-doxygen/html/html/search/enumvalues_c.js +5 -5
  192. package/SVF-doxygen/html/html/search/enumvalues_d.js +18 -18
  193. package/SVF-doxygen/html/html/search/enumvalues_e.js +9 -9
  194. package/SVF-doxygen/html/html/search/enumvalues_f.js +45 -45
  195. package/SVF-doxygen/html/html/search/files_0.js +13 -13
  196. package/SVF-doxygen/html/html/search/files_1.js +7 -7
  197. package/SVF-doxygen/html/html/search/files_10.js +8 -8
  198. package/SVF-doxygen/html/html/search/files_11.js +8 -8
  199. package/SVF-doxygen/html/html/search/files_12.js +2 -2
  200. package/SVF-doxygen/html/html/search/files_2.js +53 -53
  201. package/SVF-doxygen/html/html/search/files_3.js +14 -14
  202. package/SVF-doxygen/html/html/search/files_4.js +5 -5
  203. package/SVF-doxygen/html/html/search/files_5.js +13 -13
  204. package/SVF-doxygen/html/html/search/files_6.js +9 -9
  205. package/SVF-doxygen/html/html/search/files_7.js +14 -16
  206. package/SVF-doxygen/html/html/search/files_8.js +13 -13
  207. package/SVF-doxygen/html/html/search/files_9.js +18 -18
  208. package/SVF-doxygen/html/html/search/files_a.js +3 -3
  209. package/SVF-doxygen/html/html/search/files_b.js +2 -2
  210. package/SVF-doxygen/html/html/search/files_c.js +20 -20
  211. package/SVF-doxygen/html/html/search/files_d.js +4 -4
  212. package/SVF-doxygen/html/html/search/files_e.js +62 -62
  213. package/SVF-doxygen/html/html/search/files_f.js +8 -8
  214. package/SVF-doxygen/html/html/search/functions_0.js +12 -12
  215. package/SVF-doxygen/html/html/search/functions_1.js +356 -357
  216. package/SVF-doxygen/html/html/search/functions_10.js +140 -140
  217. package/SVF-doxygen/html/html/search/functions_11.js +138 -138
  218. package/SVF-doxygen/html/html/search/functions_12.js +276 -279
  219. package/SVF-doxygen/html/html/search/functions_13.js +58 -58
  220. package/SVF-doxygen/html/html/search/functions_14.js +39 -39
  221. package/SVF-doxygen/html/html/search/functions_15.js +71 -71
  222. package/SVF-doxygen/html/html/search/functions_16.js +32 -32
  223. package/SVF-doxygen/html/html/search/functions_17.js +3 -3
  224. package/SVF-doxygen/html/html/search/functions_18.js +172 -176
  225. package/SVF-doxygen/html/html/search/functions_2.js +86 -86
  226. package/SVF-doxygen/html/html/search/functions_3.js +257 -257
  227. package/SVF-doxygen/html/html/search/functions_4.js +75 -75
  228. package/SVF-doxygen/html/html/search/functions_5.js +53 -53
  229. package/SVF-doxygen/html/html/search/functions_6.js +59 -59
  230. package/SVF-doxygen/html/html/search/functions_7.js +848 -858
  231. package/SVF-doxygen/html/html/search/functions_8.js +146 -147
  232. package/SVF-doxygen/html/html/search/functions_9.js +425 -429
  233. package/SVF-doxygen/html/html/search/functions_a.js +30 -30
  234. package/SVF-doxygen/html/html/search/functions_b.js +2 -2
  235. package/SVF-doxygen/html/html/search/functions_c.js +26 -26
  236. package/SVF-doxygen/html/html/search/functions_d.js +77 -77
  237. package/SVF-doxygen/html/html/search/functions_e.js +35 -35
  238. package/SVF-doxygen/html/html/search/functions_f.js +56 -56
  239. package/SVF-doxygen/html/html/search/namespaces_0.js +1 -1
  240. package/SVF-doxygen/html/html/search/namespaces_1.js +7 -7
  241. package/SVF-doxygen/html/html/search/related_0.js +2 -2
  242. package/SVF-doxygen/html/html/search/related_1.js +2 -2
  243. package/SVF-doxygen/html/html/search/related_2.js +2 -2
  244. package/SVF-doxygen/html/html/search/related_3.js +2 -2
  245. package/SVF-doxygen/html/html/search/related_4.js +2 -2
  246. package/SVF-doxygen/html/html/search/related_5.js +1 -1
  247. package/SVF-doxygen/html/html/search/related_6.js +2 -2
  248. package/SVF-doxygen/html/html/search/related_7.js +4 -4
  249. package/SVF-doxygen/html/html/search/related_8.js +2 -2
  250. package/SVF-doxygen/html/html/search/related_9.js +4 -4
  251. package/SVF-doxygen/html/html/search/related_a.js +19 -19
  252. package/SVF-doxygen/html/html/search/related_b.js +4 -4
  253. package/SVF-doxygen/html/html/search/related_c.js +1 -1
  254. package/SVF-doxygen/html/html/search/related_d.js +11 -11
  255. package/SVF-doxygen/html/html/search/related_e.js +2 -2
  256. package/SVF-doxygen/html/html/search/related_f.js +2 -2
  257. package/SVF-doxygen/html/html/search/typedefs_0.js +18 -18
  258. package/SVF-doxygen/html/html/search/typedefs_1.js +26 -26
  259. package/SVF-doxygen/html/html/search/typedefs_10.js +61 -63
  260. package/SVF-doxygen/html/html/search/typedefs_11.js +13 -13
  261. package/SVF-doxygen/html/html/search/typedefs_12.js +11 -11
  262. package/SVF-doxygen/html/html/search/typedefs_13.js +35 -35
  263. package/SVF-doxygen/html/html/search/typedefs_14.js +8 -8
  264. package/SVF-doxygen/html/html/search/typedefs_2.js +129 -128
  265. package/SVF-doxygen/html/html/search/typedefs_3.js +39 -39
  266. package/SVF-doxygen/html/html/search/typedefs_4.js +17 -17
  267. package/SVF-doxygen/html/html/search/typedefs_5.js +41 -41
  268. package/SVF-doxygen/html/html/search/typedefs_6.js +55 -58
  269. package/SVF-doxygen/html/html/search/typedefs_7.js +42 -46
  270. package/SVF-doxygen/html/html/search/typedefs_8.js +1 -1
  271. package/SVF-doxygen/html/html/search/typedefs_9.js +6 -6
  272. package/SVF-doxygen/html/html/search/typedefs_a.js +29 -29
  273. package/SVF-doxygen/html/html/search/typedefs_b.js +29 -29
  274. package/SVF-doxygen/html/html/search/typedefs_c.js +41 -41
  275. package/SVF-doxygen/html/html/search/typedefs_d.js +15 -15
  276. package/SVF-doxygen/html/html/search/typedefs_e.js +52 -52
  277. package/SVF-doxygen/html/html/search/typedefs_f.js +14 -14
  278. package/SVF-doxygen/html/html/search/variables_0.js +152 -162
  279. package/SVF-doxygen/html/html/search/variables_1.js +75 -75
  280. package/SVF-doxygen/html/html/search/variables_10.js +97 -97
  281. package/SVF-doxygen/html/html/search/variables_11.js +46 -46
  282. package/SVF-doxygen/html/html/search/variables_12.js +92 -92
  283. package/SVF-doxygen/html/html/search/variables_13.js +75 -75
  284. package/SVF-doxygen/html/html/search/variables_14.js +14 -14
  285. package/SVF-doxygen/html/html/search/variables_15.js +48 -48
  286. package/SVF-doxygen/html/html/search/variables_16.js +9 -9
  287. package/SVF-doxygen/html/html/search/variables_17.js +1 -1
  288. package/SVF-doxygen/html/html/search/variables_18.js +2 -2
  289. package/SVF-doxygen/html/html/search/variables_2.js +37 -37
  290. package/SVF-doxygen/html/html/search/variables_3.js +142 -142
  291. package/SVF-doxygen/html/html/search/variables_4.js +55 -55
  292. package/SVF-doxygen/html/html/search/variables_5.js +39 -39
  293. package/SVF-doxygen/html/html/search/variables_6.js +66 -66
  294. package/SVF-doxygen/html/html/search/variables_7.js +33 -33
  295. package/SVF-doxygen/html/html/search/variables_8.js +7 -7
  296. package/SVF-doxygen/html/html/search/variables_9.js +77 -77
  297. package/SVF-doxygen/html/html/search/variables_a.js +4 -4
  298. package/SVF-doxygen/html/html/search/variables_b.js +10 -10
  299. package/SVF-doxygen/html/html/search/variables_c.js +45 -45
  300. package/SVF-doxygen/html/html/search/variables_d.js +56 -56
  301. package/SVF-doxygen/html/html/search/variables_e.js +123 -123
  302. package/SVF-doxygen/html/html/search/variables_f.js +30 -30
  303. package/SVF-doxygen/html/html/structSVF_1_1CFBasicBlockEdge_1_1equalCFBBEdge-members.html +84 -0
  304. package/SVF-doxygen/html/html/structSVF_1_1CFBasicBlockEdge_1_1equalCFBBEdge.html +144 -0
  305. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVF_1_1CFBasicBlockGraph_01_5_01_4.html +40 -40
  306. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CFBasicBlockNode_01_5_01_4_01_4.html +1 -1
  307. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFBasicBlockGraph_01_5_01_4.html +2 -2
  308. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFBasicBlockNode_01_5_01_4.html +1 -1
  309. package/package.json +1 -1
  310. package/svf/include/Graphs/CFBasicBlockG.h +342 -32
  311. package/svf/include/Util/ExtAPI.h +2 -2
  312. package/svf/lib/Graphs/CFBasicBlockG.cpp +97 -36
  313. package/svf/lib/Util/ExtAPI.cpp +14 -15
  314. package/svf/include/Graphs/ICFGWrapper.h +0 -728
  315. package/svf/lib/Graphs/ICFGWrapper.cpp +0 -97
@@ -446,15 +446,15 @@ $(function() {
446
446
  </div><!-- fragment --></div><!-- contents -->
447
447
  <div class="ttc" id="aclassSVF_1_1ConstraintNode_html_ac40ecefd565e029748fdacbc44c4cd54"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#ac40ecefd565e029748fdacbc44c4cd54">SVF::ConstraintNode::baseIds</a></div><div class="ttdeci">NodeBS baseIds</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00072">ConsGNode.h:72</a></div></div>
448
448
  <div class="ttc" id="aclassSVF_1_1ConstraintNode_html_a2d0e87fa3174562c97b519b2b144d8ea"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#a2d0e87fa3174562c97b519b2b144d8ea">SVF::ConstraintNode::removeIncomingStoreEdge</a></div><div class="ttdeci">bool removeIncomingStoreEdge(StoreCGEdge *inEdge)</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00376">ConsGNode.h:376</a></div></div>
449
- <div class="ttc" id="aclassSVF_1_1GenericNode_html_ae74283fbc788665296a69e56f334557b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ae74283fbc788665296a69e56f334557b">SVF::GenericNode&lt; ConstraintNode, ConstraintEdge &gt;::addOutgoingEdge</a></div><div class="ttdeci">bool addOutgoingEdge(EdgeType *outEdge)</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00294">GenericGraph.h:294</a></div></div>
450
- <div class="ttc" id="aclassSVF_1_1GenericNode_html_a95415bebc5986e548f91169b201a5225"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a95415bebc5986e548f91169b201a5225">SVF::GenericNode&lt; ConstraintNode, ConstraintEdge &gt;::removeIncomingEdge</a></div><div class="ttdeci">u32_t removeIncomingEdge(EdgeType *edge)</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00302">GenericGraph.h:302</a></div></div>
449
+ <div class="ttc" id="aclassSVF_1_1GenericNode_html_ae74283fbc788665296a69e56f334557b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ae74283fbc788665296a69e56f334557b">SVF::GenericNode::addOutgoingEdge</a></div><div class="ttdeci">bool addOutgoingEdge(EdgeType *outEdge)</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00294">GenericGraph.h:294</a></div></div>
450
+ <div class="ttc" id="aclassSVF_1_1GenericNode_html_a95415bebc5986e548f91169b201a5225"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a95415bebc5986e548f91169b201a5225">SVF::GenericNode::removeIncomingEdge</a></div><div class="ttdeci">u32_t removeIncomingEdge(EdgeType *edge)</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00302">GenericGraph.h:302</a></div></div>
451
451
  <div class="ttc" id="aclassSVF_1_1ConstraintEdge_html_ad155e1ed2473cc4f5f57128d282ac541"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#ad155e1ed2473cc4f5f57128d282ac541">SVF::ConstraintEdge::ConstraintEdgeSetTy</a></div><div class="ttdeci">GenericNode&lt; ConstraintNode, ConstraintEdge &gt;::GEdgeSetTy ConstraintEdgeSetTy</div><div class="ttdoc">Constraint edge type.</div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00085">ConsGEdge.h:85</a></div></div>
452
452
  <div class="ttc" id="aclassSVF_1_1ConstraintNode_html_aed4e0b2ede72717491747158c2e2702f"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#aed4e0b2ede72717491747158c2e2702f">SVF::ConstraintNode::directInEdgeEnd</a></div><div class="ttdeci">iterator directInEdgeEnd()</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8cpp_source.html#l00658">ConsG.cpp:658</a></div></div>
453
453
  <div class="ttc" id="aclassSVF_1_1ConstraintEdge_html"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html">SVF::ConstraintEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00048">ConsGEdge.h:48</a></div></div>
454
454
  <div class="ttc" id="aclassSVF_1_1ConstraintNode_html_a9d1bb95ad5549d7e6030fe07f8e070a2"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#a9d1bb95ad5549d7e6030fe07f8e070a2">SVF::ConstraintNode::addIncomingLoadEdge</a></div><div class="ttdeci">void addIncomingLoadEdge(LoadCGEdge *inEdge)</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00252">ConsGNode.h:252</a></div></div>
455
- <div class="ttc" id="aclassSVF_1_1GenericNode_html_a93d217b0c9fd8008a2989ca2b4f3fbfb"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a93d217b0c9fd8008a2989ca2b4f3fbfb">SVF::GenericNode&lt; ConstraintNode, ConstraintEdge &gt;::addIncomingEdge</a></div><div class="ttdeci">bool addIncomingEdge(EdgeType *inEdge)</div><div class="ttdoc">Add incoming and outgoing edges.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00290">GenericGraph.h:290</a></div></div>
455
+ <div class="ttc" id="aclassSVF_1_1GenericNode_html_a93d217b0c9fd8008a2989ca2b4f3fbfb"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a93d217b0c9fd8008a2989ca2b4f3fbfb">SVF::GenericNode::addIncomingEdge</a></div><div class="ttdeci">bool addIncomingEdge(EdgeType *inEdge)</div><div class="ttdoc">Add incoming and outgoing edges.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00290">GenericGraph.h:290</a></div></div>
456
456
  <div class="ttc" id="aclassSVF_1_1ConstraintNode_html_a2395948518a1befb7a3762bbad6adf9f"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#a2395948518a1befb7a3762bbad6adf9f">SVF::ConstraintNode::addOutgoingCopyEdge</a></div><div class="ttdeci">void addOutgoingCopyEdge(CopyCGEdge *outEdge)</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00237">ConsGNode.h:237</a></div></div>
457
- <div class="ttc" id="aclassSVF_1_1GenericNode_html_a1880a691130279625e5be6af36e86fc1"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a1880a691130279625e5be6af36e86fc1">SVF::GenericNode&lt; ConstraintNode, ConstraintEdge &gt;::removeOutgoingEdge</a></div><div class="ttdeci">u32_t removeOutgoingEdge(EdgeType *edge)</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00309">GenericGraph.h:309</a></div></div>
457
+ <div class="ttc" id="aclassSVF_1_1GenericNode_html_a1880a691130279625e5be6af36e86fc1"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a1880a691130279625e5be6af36e86fc1">SVF::GenericNode::removeOutgoingEdge</a></div><div class="ttdeci">u32_t removeOutgoingEdge(EdgeType *edge)</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00309">GenericGraph.h:309</a></div></div>
458
458
  <div class="ttc" id="aclassSVF_1_1ConstraintNode_html_a873ba0c14dc57bd603c4a6b4d73e4278"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#a873ba0c14dc57bd603c4a6b4d73e4278">SVF::ConstraintNode::strides</a></div><div class="ttdeci">NodeBS strides</div><div class="ttdoc">For stride-based field representation.</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00071">ConsGNode.h:71</a></div></div>
459
459
  <div class="ttc" id="aclassSVF_1_1ConstraintEdge_html_a663af27955ba0c545f34fa1f076b7375acfd0a194af0da66162545f0089eb4baa"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375acfd0a194af0da66162545f0089eb4baa">SVF::ConstraintEdge::NormalGep</a></div><div class="ttdeci">@ NormalGep</div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00056">ConsGEdge.h:56</a></div></div>
460
460
  <div class="ttc" id="aclassSVF_1_1ConstraintNode_html_affb426040b05678fcbce62002a02bb06"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#affb426040b05678fcbce62002a02bb06">SVF::ConstraintNode::directOutEdges</a></div><div class="ttdeci">ConstraintEdge::ConstraintEdgeSetTy directOutEdges</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00058">ConsGNode.h:58</a></div></div>
@@ -110,32 +110,32 @@ Functions</h2></td></tr>
110
110
  </table>
111
111
  </div><div class="memdoc">
112
112
 
113
- <p class="definition">Definition at line <a class="el" href="ExtAPI_8cpp_source.html#l00089">89</a> of file <a class="el" href="ExtAPI_8cpp_source.html">ExtAPI.cpp</a>.</p>
114
- <div class="fragment"><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;{</div>
115
- <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> bcFilePath = <span class="stringliteral">&quot;&quot;</span>;</div>
116
- <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">if</span> (path.compare(<span class="stringliteral">&quot;SVF_DIR&quot;</span>) == 0)</div>
117
- <div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; {</div>
118
- <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; bcFilePath = getenv(<span class="stringliteral">&quot;SVF_DIR&quot;</span>);</div>
119
- <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div>
120
- <div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (path.compare(<span class="stringliteral">&quot;npm root&quot;</span>) == 0)</div>
121
- <div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; {</div>
122
- <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; bcFilePath = <a class="code" href="ExtAPI_8cpp.html#a424940f91f234b23bcc633f12269f935">GetStdoutFromCommand</a>(path);</div>
123
- <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="comment">// SVF installed via npm needs to determine the type of operating</span></div>
124
- <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// system, otherwise the extapi.bc path may not be found.</span></div>
125
- <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="preprocessor">#ifdef linux</span></div>
126
- <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="comment">// Linux os</span></div>
127
- <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; bcFilePath.append(<span class="stringliteral">&quot;/svf-lib/SVF-linux&quot;</span>);</div>
128
- <div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor">#else</span></div>
129
- <div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="comment">// Mac os</span></div>
130
- <div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; bcFilePath.append(<span class="stringliteral">&quot;/svf-lib/SVF-osx&quot;</span>);</div>
131
- <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor">#endif</span></div>
132
- <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }</div>
133
- <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; </div>
134
- <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">if</span> (!bcFilePath.empty() &amp;&amp; bcFilePath.back() != <span class="charliteral">&#39;/&#39;</span>)</div>
135
- <div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; bcFilePath.push_back(<span class="charliteral">&#39;/&#39;</span>);</div>
136
- <div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; bcFilePath.append(BUILD_TYPE).append(<a class="code" href="ExtAPI_8h.html#a8983f9a86a5284dc50950222a06f1a11">DEFUALT_EXTAPI_BC_PATH</a>);</div>
137
- <div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">return</span> bcFilePath;</div>
138
- <div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;}</div>
113
+ <p class="definition">Definition at line <a class="el" href="ExtAPI_8cpp_source.html#l00095">95</a> of file <a class="el" href="ExtAPI_8cpp_source.html">ExtAPI.cpp</a>.</p>
114
+ <div class="fragment"><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;{</div>
115
+ <div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> bcFilePath = <span class="stringliteral">&quot;&quot;</span>;</div>
116
+ <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (path.compare(<span class="stringliteral">&quot;SVF_DIR&quot;</span>) == 0)</div>
117
+ <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; {</div>
118
+ <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; bcFilePath = getenv(<span class="stringliteral">&quot;SVF_DIR&quot;</span>);</div>
119
+ <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
120
+ <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (path.compare(<span class="stringliteral">&quot;npm root&quot;</span>) == 0)</div>
121
+ <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; {</div>
122
+ <div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; bcFilePath = <a class="code" href="ExtAPI_8cpp.html#a424940f91f234b23bcc633f12269f935">GetStdoutFromCommand</a>(path);</div>
123
+ <div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="comment">// SVF installed via npm needs to determine the type of operating</span></div>
124
+ <div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// system, otherwise the extapi.bc path may not be found.</span></div>
125
+ <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor">#ifdef linux</span></div>
126
+ <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="comment">// Linux os</span></div>
127
+ <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; bcFilePath.append(<span class="stringliteral">&quot;/svf-lib/SVF-linux&quot;</span>);</div>
128
+ <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor">#else</span></div>
129
+ <div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="comment">// Mac os</span></div>
130
+ <div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; bcFilePath.append(<span class="stringliteral">&quot;/svf-lib/SVF-osx&quot;</span>);</div>
131
+ <div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor">#endif</span></div>
132
+ <div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; }</div>
133
+ <div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; </div>
134
+ <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">if</span> (!bcFilePath.empty() &amp;&amp; bcFilePath.back() != <span class="charliteral">&#39;/&#39;</span>)</div>
135
+ <div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; bcFilePath.push_back(<span class="charliteral">&#39;/&#39;</span>);</div>
136
+ <div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; bcFilePath.append(BUILD_TYPE).append(<a class="code" href="ExtAPI_8h.html#a3be52a096fe407bb55141117f1cf4c75">DEFAULT_EXTAPI_BC_PATH</a>);</div>
137
+ <div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">return</span> bcFilePath;</div>
138
+ <div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;}</div>
139
139
  </div><!-- fragment -->
140
140
  </div>
141
141
  </div>
@@ -163,38 +163,38 @@ Functions</h2></td></tr>
163
163
  </table>
164
164
  </div><div class="memdoc">
165
165
 
166
- <p class="definition">Definition at line <a class="el" href="ExtAPI_8cpp_source.html#l00065">65</a> of file <a class="el" href="ExtAPI_8cpp_source.html">ExtAPI.cpp</a>.</p>
167
- <div class="fragment"><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;{</div>
168
- <div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordtype">char</span> <a class="code" href="cJSON_8h.html#a503753140aa27b00f99a3501280b2746">buffer</a>[128];</div>
169
- <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> result = <span class="stringliteral">&quot;&quot;</span>;</div>
170
- <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">// Open pipe to file</span></div>
171
- <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; FILE* pipe = popen(command.c_str(), <span class="stringliteral">&quot;r&quot;</span>);</div>
172
- <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span> (!pipe)</div>
173
- <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; {</div>
174
- <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;popen failed!&quot;</span>;</div>
175
- <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div>
176
- <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">// read till end of process:</span></div>
177
- <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">while</span> (!feof(pipe))</div>
178
- <div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; {</div>
179
- <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="comment">// use buffer to read and add to result</span></div>
180
- <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="extapi_8c.html#a55c10fd7c7152a709388daa21827771c">fgets</a>(<a class="code" href="cJSON_8h.html#a503753140aa27b00f99a3501280b2746">buffer</a>, 128, pipe) != <a class="code" href="cJSON_8cpp.html#a1a05ede2ad100bf5de5dfa7ccdfa4397">NULL</a>)</div>
181
- <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; result += <a class="code" href="cJSON_8h.html#a503753140aa27b00f99a3501280b2746">buffer</a>;</div>
182
- <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div>
183
- <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; pclose(pipe);</div>
184
- <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">// remove &quot;\n&quot;</span></div>
185
- <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; result.erase(remove(result.begin(), result.end(), <span class="charliteral">&#39;\n&#39;</span>), result.end());</div>
186
- <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> result;</div>
187
- <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;}</div>
166
+ <p class="definition">Definition at line <a class="el" href="ExtAPI_8cpp_source.html#l00071">71</a> of file <a class="el" href="ExtAPI_8cpp_source.html">ExtAPI.cpp</a>.</p>
167
+ <div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;{</div>
168
+ <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">char</span> <a class="code" href="cJSON_8h.html#a503753140aa27b00f99a3501280b2746">buffer</a>[128];</div>
169
+ <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> result = <span class="stringliteral">&quot;&quot;</span>;</div>
170
+ <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">// Open pipe to file</span></div>
171
+ <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; FILE* pipe = popen(command.c_str(), <span class="stringliteral">&quot;r&quot;</span>);</div>
172
+ <div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">if</span> (!pipe)</div>
173
+ <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; {</div>
174
+ <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;popen failed!&quot;</span>;</div>
175
+ <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div>
176
+ <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">// read till end of process:</span></div>
177
+ <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">while</span> (!feof(pipe))</div>
178
+ <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; {</div>
179
+ <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="comment">// use buffer to read and add to result</span></div>
180
+ <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="extapi_8c.html#a55c10fd7c7152a709388daa21827771c">fgets</a>(<a class="code" href="cJSON_8h.html#a503753140aa27b00f99a3501280b2746">buffer</a>, 128, pipe) != <a class="code" href="cJSON_8cpp.html#a1a05ede2ad100bf5de5dfa7ccdfa4397">NULL</a>)</div>
181
+ <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; result += <a class="code" href="cJSON_8h.html#a503753140aa27b00f99a3501280b2746">buffer</a>;</div>
182
+ <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; }</div>
183
+ <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; pclose(pipe);</div>
184
+ <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="comment">// remove &quot;\n&quot;</span></div>
185
+ <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; result.erase(remove(result.begin(), result.end(), <span class="charliteral">&#39;\n&#39;</span>), result.end());</div>
186
+ <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> result;</div>
187
+ <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;}</div>
188
188
  </div><!-- fragment -->
189
189
  </div>
190
190
  </div>
191
191
  </div><!-- contents -->
192
192
  <div class="ttc" id="aextapi_8c_html_a55c10fd7c7152a709388daa21827771c"><div class="ttname"><a href="extapi_8c.html#a55c10fd7c7152a709388daa21827771c">fgets</a></div><div class="ttdeci">char * fgets(char *str, int n, void *stream)</div><div class="ttdef"><b>Definition:</b> <a href="extapi_8c_source.html#l00684">extapi.c:684</a></div></div>
193
- <div class="ttc" id="aExtAPI_8cpp_html_a424940f91f234b23bcc633f12269f935"><div class="ttname"><a href="ExtAPI_8cpp.html#a424940f91f234b23bcc633f12269f935">GetStdoutFromCommand</a></div><div class="ttdeci">static std::string GetStdoutFromCommand(const std::string &amp;command)</div><div class="ttdef"><b>Definition:</b> <a href="ExtAPI_8cpp_source.html#l00065">ExtAPI.cpp:65</a></div></div>
193
+ <div class="ttc" id="aExtAPI_8cpp_html_a424940f91f234b23bcc633f12269f935"><div class="ttname"><a href="ExtAPI_8cpp.html#a424940f91f234b23bcc633f12269f935">GetStdoutFromCommand</a></div><div class="ttdeci">static std::string GetStdoutFromCommand(const std::string &amp;command)</div><div class="ttdef"><b>Definition:</b> <a href="ExtAPI_8cpp_source.html#l00071">ExtAPI.cpp:71</a></div></div>
194
194
  <div class="ttc" id="acJSON_8h_html_a503753140aa27b00f99a3501280b2746"><div class="ttname"><a href="cJSON_8h.html#a503753140aa27b00f99a3501280b2746">buffer</a></div><div class="ttdeci">char * buffer</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00163">cJSON.h:163</a></div></div>
195
195
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
196
- <div class="ttc" id="aExtAPI_8h_html_a8983f9a86a5284dc50950222a06f1a11"><div class="ttname"><a href="ExtAPI_8h.html#a8983f9a86a5284dc50950222a06f1a11">DEFUALT_EXTAPI_BC_PATH</a></div><div class="ttdeci">#define DEFUALT_EXTAPI_BC_PATH</div><div class="ttdoc">For a more detailed explanation of how External APIs are handled in SVF, please refer to the SVF Wiki...</div><div class="ttdef"><b>Definition:</b> <a href="ExtAPI_8h_source.html#l00041">ExtAPI.h:41</a></div></div>
197
196
  <div class="ttc" id="acJSON_8cpp_html_a1a05ede2ad100bf5de5dfa7ccdfa4397"><div class="ttname"><a href="cJSON_8cpp.html#a1a05ede2ad100bf5de5dfa7ccdfa4397">NULL</a></div><div class="ttdeci">return NULL</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l01173">cJSON.cpp:1173</a></div></div>
197
+ <div class="ttc" id="aExtAPI_8h_html_a3be52a096fe407bb55141117f1cf4c75"><div class="ttname"><a href="ExtAPI_8h.html#a3be52a096fe407bb55141117f1cf4c75">DEFAULT_EXTAPI_BC_PATH</a></div><div class="ttdeci">#define DEFAULT_EXTAPI_BC_PATH</div><div class="ttdoc">For a more detailed explanation of how External APIs are handled in SVF, please refer to the SVF Wiki...</div><div class="ttdef"><b>Definition:</b> <a href="ExtAPI_8h_source.html#l00041">ExtAPI.h:41</a></div></div>
198
198
  <!-- start footer part -->
199
199
  <hr class="footer"/><address class="footer"><small>
200
200
  Generated by &#160;<a href="http://www.doxygen.org/index.html">