svf-tools 1.0.766 → 1.0.767

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 (239) hide show
  1. package/SVF-doxygen/html/html/ExtAPI_8cpp.html +120 -0
  2. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +196 -114
  3. package/SVF-doxygen/html/html/ExtAPI_8h.html +27 -1
  4. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +66 -60
  5. package/SVF-doxygen/html/html/Options_8cpp.html +1 -0
  6. package/SVF-doxygen/html/html/Options_8cpp_source.html +860 -858
  7. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +1 -1
  8. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +9 -9
  9. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI-members.html +10 -9
  10. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +128 -88
  11. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +1 -1
  12. package/SVF-doxygen/html/html/functions_func_g.html +16 -13
  13. package/SVF-doxygen/html/html/functions_func_p.html +1 -1
  14. package/SVF-doxygen/html/html/functions_func_s.html +2 -2
  15. package/SVF-doxygen/html/html/functions_g.html +19 -16
  16. package/SVF-doxygen/html/html/functions_o.html +3 -3
  17. package/SVF-doxygen/html/html/functions_p.html +9 -9
  18. package/SVF-doxygen/html/html/functions_r.html +8 -8
  19. package/SVF-doxygen/html/html/functions_s.html +10 -8
  20. package/SVF-doxygen/html/html/functions_t.html +5 -5
  21. package/SVF-doxygen/html/html/functions_v.html +6 -6
  22. package/SVF-doxygen/html/html/functions_w.html +1 -1
  23. package/SVF-doxygen/html/html/globals_defs.html +3 -0
  24. package/SVF-doxygen/html/html/globals_e.html +3 -0
  25. package/SVF-doxygen/html/html/globals_func.html +6 -0
  26. package/SVF-doxygen/html/html/globals_g.html +6 -0
  27. package/SVF-doxygen/html/html/namespaceSVF.html +0 -1
  28. package/SVF-doxygen/html/html/search/all_10.js +323 -323
  29. package/SVF-doxygen/html/html/search/all_11.js +212 -212
  30. package/SVF-doxygen/html/html/search/all_12.js +536 -536
  31. package/SVF-doxygen/html/html/search/all_13.js +188 -188
  32. package/SVF-doxygen/html/html/search/all_14.js +66 -66
  33. package/SVF-doxygen/html/html/search/all_15.js +170 -170
  34. package/SVF-doxygen/html/html/search/all_16.js +60 -60
  35. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  36. package/SVF-doxygen/html/html/search/all_18.js +1 -1
  37. package/SVF-doxygen/html/html/search/all_19.js +10 -10
  38. package/SVF-doxygen/html/html/search/all_1a.js +169 -169
  39. package/SVF-doxygen/html/html/search/all_5.js +17 -16
  40. package/SVF-doxygen/html/html/search/all_6.js +224 -224
  41. package/SVF-doxygen/html/html/search/all_7.js +999 -996
  42. package/SVF-doxygen/html/html/search/all_8.js +191 -191
  43. package/SVF-doxygen/html/html/search/all_9.js +605 -605
  44. package/SVF-doxygen/html/html/search/all_a.js +46 -46
  45. package/SVF-doxygen/html/html/search/all_b.js +26 -26
  46. package/SVF-doxygen/html/html/search/all_c.js +114 -114
  47. package/SVF-doxygen/html/html/search/all_d.js +196 -196
  48. package/SVF-doxygen/html/html/search/all_e.js +205 -205
  49. package/SVF-doxygen/html/html/search/all_f.js +116 -116
  50. package/SVF-doxygen/html/html/search/classes_0.js +26 -26
  51. package/SVF-doxygen/html/html/search/classes_1.js +9 -9
  52. package/SVF-doxygen/html/html/search/classes_10.js +73 -73
  53. package/SVF-doxygen/html/html/search/classes_11.js +15 -15
  54. package/SVF-doxygen/html/html/search/classes_12.js +2 -2
  55. package/SVF-doxygen/html/html/search/classes_13.js +10 -10
  56. package/SVF-doxygen/html/html/search/classes_14.js +14 -14
  57. package/SVF-doxygen/html/html/search/classes_15.js +1 -1
  58. package/SVF-doxygen/html/html/search/classes_2.js +76 -76
  59. package/SVF-doxygen/html/html/search/classes_3.js +35 -35
  60. package/SVF-doxygen/html/html/search/classes_4.js +8 -8
  61. package/SVF-doxygen/html/html/search/classes_5.js +28 -28
  62. package/SVF-doxygen/html/html/search/classes_6.js +98 -98
  63. package/SVF-doxygen/html/html/search/classes_7.js +33 -33
  64. package/SVF-doxygen/html/html/search/classes_8.js +56 -56
  65. package/SVF-doxygen/html/html/search/classes_9.js +1 -1
  66. package/SVF-doxygen/html/html/search/classes_a.js +12 -12
  67. package/SVF-doxygen/html/html/search/classes_b.js +29 -29
  68. package/SVF-doxygen/html/html/search/classes_c.js +6 -6
  69. package/SVF-doxygen/html/html/search/classes_d.js +18 -18
  70. package/SVF-doxygen/html/html/search/classes_e.js +36 -36
  71. package/SVF-doxygen/html/html/search/classes_f.js +25 -25
  72. package/SVF-doxygen/html/html/search/defines_0.js +3 -3
  73. package/SVF-doxygen/html/html/search/defines_1.js +2 -2
  74. package/SVF-doxygen/html/html/search/defines_2.js +30 -30
  75. package/SVF-doxygen/html/html/search/defines_3.js +20 -20
  76. package/SVF-doxygen/html/html/search/defines_4.js +3 -2
  77. package/SVF-doxygen/html/html/search/defines_5.js +4 -4
  78. package/SVF-doxygen/html/html/search/defines_6.js +2 -2
  79. package/SVF-doxygen/html/html/search/defines_7.js +5 -5
  80. package/SVF-doxygen/html/html/search/defines_8.js +11 -11
  81. package/SVF-doxygen/html/html/search/defines_9.js +9 -9
  82. package/SVF-doxygen/html/html/search/defines_a.js +2 -2
  83. package/SVF-doxygen/html/html/search/defines_b.js +1 -1
  84. package/SVF-doxygen/html/html/search/defines_c.js +3 -3
  85. package/SVF-doxygen/html/html/search/defines_d.js +2 -2
  86. package/SVF-doxygen/html/html/search/defines_e.js +6 -6
  87. package/SVF-doxygen/html/html/search/defines_f.js +3 -3
  88. package/SVF-doxygen/html/html/search/enums_0.js +3 -3
  89. package/SVF-doxygen/html/html/search/enums_1.js +2 -2
  90. package/SVF-doxygen/html/html/search/enums_10.js +1 -1
  91. package/SVF-doxygen/html/html/search/enums_11.js +1 -1
  92. package/SVF-doxygen/html/html/search/enums_2.js +8 -8
  93. package/SVF-doxygen/html/html/search/enums_3.js +1 -1
  94. package/SVF-doxygen/html/html/search/enums_4.js +3 -3
  95. package/SVF-doxygen/html/html/search/enums_5.js +1 -1
  96. package/SVF-doxygen/html/html/search/enums_6.js +2 -2
  97. package/SVF-doxygen/html/html/search/enums_7.js +2 -2
  98. package/SVF-doxygen/html/html/search/enums_8.js +4 -4
  99. package/SVF-doxygen/html/html/search/enums_9.js +1 -1
  100. package/SVF-doxygen/html/html/search/enums_a.js +1 -1
  101. package/SVF-doxygen/html/html/search/enums_b.js +7 -7
  102. package/SVF-doxygen/html/html/search/enums_c.js +1 -1
  103. package/SVF-doxygen/html/html/search/enums_d.js +4 -4
  104. package/SVF-doxygen/html/html/search/enums_e.js +2 -2
  105. package/SVF-doxygen/html/html/search/enums_f.js +4 -4
  106. package/SVF-doxygen/html/html/search/enumvalues_0.js +14 -14
  107. package/SVF-doxygen/html/html/search/enumvalues_1.js +14 -14
  108. package/SVF-doxygen/html/html/search/enumvalues_10.js +35 -35
  109. package/SVF-doxygen/html/html/search/enumvalues_11.js +3 -3
  110. package/SVF-doxygen/html/html/search/enumvalues_12.js +10 -10
  111. package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
  112. package/SVF-doxygen/html/html/search/enumvalues_14.js +1 -1
  113. package/SVF-doxygen/html/html/search/enumvalues_15.js +3 -3
  114. package/SVF-doxygen/html/html/search/enumvalues_2.js +36 -36
  115. package/SVF-doxygen/html/html/search/enumvalues_3.js +13 -13
  116. package/SVF-doxygen/html/html/search/enumvalues_4.js +2 -2
  117. package/SVF-doxygen/html/html/search/enumvalues_5.js +47 -47
  118. package/SVF-doxygen/html/html/search/enumvalues_6.js +6 -6
  119. package/SVF-doxygen/html/html/search/enumvalues_7.js +9 -9
  120. package/SVF-doxygen/html/html/search/enumvalues_8.js +23 -23
  121. package/SVF-doxygen/html/html/search/enumvalues_9.js +6 -6
  122. package/SVF-doxygen/html/html/search/enumvalues_a.js +15 -15
  123. package/SVF-doxygen/html/html/search/enumvalues_b.js +11 -11
  124. package/SVF-doxygen/html/html/search/enumvalues_c.js +5 -5
  125. package/SVF-doxygen/html/html/search/enumvalues_d.js +18 -18
  126. package/SVF-doxygen/html/html/search/enumvalues_e.js +9 -9
  127. package/SVF-doxygen/html/html/search/enumvalues_f.js +45 -45
  128. package/SVF-doxygen/html/html/search/files_0.js +13 -13
  129. package/SVF-doxygen/html/html/search/files_1.js +7 -7
  130. package/SVF-doxygen/html/html/search/files_10.js +8 -8
  131. package/SVF-doxygen/html/html/search/files_11.js +8 -8
  132. package/SVF-doxygen/html/html/search/files_12.js +2 -2
  133. package/SVF-doxygen/html/html/search/files_2.js +49 -49
  134. package/SVF-doxygen/html/html/search/files_3.js +14 -14
  135. package/SVF-doxygen/html/html/search/files_4.js +5 -5
  136. package/SVF-doxygen/html/html/search/files_5.js +13 -13
  137. package/SVF-doxygen/html/html/search/files_6.js +9 -9
  138. package/SVF-doxygen/html/html/search/files_7.js +14 -14
  139. package/SVF-doxygen/html/html/search/files_8.js +13 -13
  140. package/SVF-doxygen/html/html/search/files_9.js +18 -18
  141. package/SVF-doxygen/html/html/search/files_a.js +3 -3
  142. package/SVF-doxygen/html/html/search/files_b.js +2 -2
  143. package/SVF-doxygen/html/html/search/files_c.js +20 -20
  144. package/SVF-doxygen/html/html/search/files_d.js +4 -4
  145. package/SVF-doxygen/html/html/search/files_e.js +62 -62
  146. package/SVF-doxygen/html/html/search/files_f.js +8 -8
  147. package/SVF-doxygen/html/html/search/functions_0.js +6 -6
  148. package/SVF-doxygen/html/html/search/functions_1.js +348 -348
  149. package/SVF-doxygen/html/html/search/functions_10.js +139 -139
  150. package/SVF-doxygen/html/html/search/functions_11.js +126 -126
  151. package/SVF-doxygen/html/html/search/functions_12.js +273 -273
  152. package/SVF-doxygen/html/html/search/functions_13.js +56 -56
  153. package/SVF-doxygen/html/html/search/functions_14.js +38 -38
  154. package/SVF-doxygen/html/html/search/functions_15.js +71 -71
  155. package/SVF-doxygen/html/html/search/functions_16.js +29 -29
  156. package/SVF-doxygen/html/html/search/functions_17.js +2 -2
  157. package/SVF-doxygen/html/html/search/functions_18.js +169 -169
  158. package/SVF-doxygen/html/html/search/functions_2.js +82 -82
  159. package/SVF-doxygen/html/html/search/functions_3.js +251 -251
  160. package/SVF-doxygen/html/html/search/functions_4.js +71 -71
  161. package/SVF-doxygen/html/html/search/functions_5.js +51 -51
  162. package/SVF-doxygen/html/html/search/functions_6.js +58 -58
  163. package/SVF-doxygen/html/html/search/functions_7.js +819 -816
  164. package/SVF-doxygen/html/html/search/functions_8.js +143 -143
  165. package/SVF-doxygen/html/html/search/functions_9.js +425 -425
  166. package/SVF-doxygen/html/html/search/functions_a.js +30 -30
  167. package/SVF-doxygen/html/html/search/functions_b.js +2 -2
  168. package/SVF-doxygen/html/html/search/functions_c.js +24 -24
  169. package/SVF-doxygen/html/html/search/functions_d.js +77 -77
  170. package/SVF-doxygen/html/html/search/functions_e.js +34 -34
  171. package/SVF-doxygen/html/html/search/functions_f.js +56 -56
  172. package/SVF-doxygen/html/html/search/namespaces_0.js +1 -1
  173. package/SVF-doxygen/html/html/search/namespaces_1.js +7 -7
  174. package/SVF-doxygen/html/html/search/related_0.js +2 -2
  175. package/SVF-doxygen/html/html/search/related_1.js +1 -1
  176. package/SVF-doxygen/html/html/search/related_2.js +2 -2
  177. package/SVF-doxygen/html/html/search/related_3.js +2 -2
  178. package/SVF-doxygen/html/html/search/related_4.js +2 -2
  179. package/SVF-doxygen/html/html/search/related_5.js +1 -1
  180. package/SVF-doxygen/html/html/search/related_6.js +2 -2
  181. package/SVF-doxygen/html/html/search/related_7.js +4 -4
  182. package/SVF-doxygen/html/html/search/related_8.js +2 -2
  183. package/SVF-doxygen/html/html/search/related_9.js +4 -4
  184. package/SVF-doxygen/html/html/search/related_a.js +19 -19
  185. package/SVF-doxygen/html/html/search/related_b.js +4 -4
  186. package/SVF-doxygen/html/html/search/related_c.js +1 -1
  187. package/SVF-doxygen/html/html/search/related_d.js +11 -11
  188. package/SVF-doxygen/html/html/search/related_e.js +2 -2
  189. package/SVF-doxygen/html/html/search/related_f.js +2 -2
  190. package/SVF-doxygen/html/html/search/typedefs_0.js +18 -18
  191. package/SVF-doxygen/html/html/search/typedefs_1.js +25 -25
  192. package/SVF-doxygen/html/html/search/typedefs_10.js +60 -60
  193. package/SVF-doxygen/html/html/search/typedefs_11.js +13 -13
  194. package/SVF-doxygen/html/html/search/typedefs_12.js +11 -11
  195. package/SVF-doxygen/html/html/search/typedefs_13.js +35 -35
  196. package/SVF-doxygen/html/html/search/typedefs_14.js +8 -8
  197. package/SVF-doxygen/html/html/search/typedefs_2.js +126 -126
  198. package/SVF-doxygen/html/html/search/typedefs_3.js +39 -39
  199. package/SVF-doxygen/html/html/search/typedefs_4.js +16 -16
  200. package/SVF-doxygen/html/html/search/typedefs_5.js +41 -41
  201. package/SVF-doxygen/html/html/search/typedefs_6.js +52 -52
  202. package/SVF-doxygen/html/html/search/typedefs_7.js +40 -40
  203. package/SVF-doxygen/html/html/search/typedefs_8.js +1 -1
  204. package/SVF-doxygen/html/html/search/typedefs_9.js +6 -6
  205. package/SVF-doxygen/html/html/search/typedefs_a.js +29 -29
  206. package/SVF-doxygen/html/html/search/typedefs_b.js +29 -29
  207. package/SVF-doxygen/html/html/search/typedefs_c.js +40 -40
  208. package/SVF-doxygen/html/html/search/typedefs_d.js +15 -15
  209. package/SVF-doxygen/html/html/search/typedefs_e.js +52 -52
  210. package/SVF-doxygen/html/html/search/typedefs_f.js +14 -14
  211. package/SVF-doxygen/html/html/search/variables_0.js +147 -147
  212. package/SVF-doxygen/html/html/search/variables_1.js +75 -75
  213. package/SVF-doxygen/html/html/search/variables_10.js +97 -97
  214. package/SVF-doxygen/html/html/search/variables_11.js +46 -46
  215. package/SVF-doxygen/html/html/search/variables_12.js +92 -92
  216. package/SVF-doxygen/html/html/search/variables_13.js +75 -75
  217. package/SVF-doxygen/html/html/search/variables_14.js +14 -14
  218. package/SVF-doxygen/html/html/search/variables_15.js +48 -48
  219. package/SVF-doxygen/html/html/search/variables_16.js +9 -9
  220. package/SVF-doxygen/html/html/search/variables_17.js +1 -1
  221. package/SVF-doxygen/html/html/search/variables_18.js +2 -2
  222. package/SVF-doxygen/html/html/search/variables_2.js +34 -34
  223. package/SVF-doxygen/html/html/search/variables_3.js +141 -141
  224. package/SVF-doxygen/html/html/search/variables_4.js +55 -55
  225. package/SVF-doxygen/html/html/search/variables_5.js +38 -38
  226. package/SVF-doxygen/html/html/search/variables_6.js +66 -66
  227. package/SVF-doxygen/html/html/search/variables_7.js +33 -33
  228. package/SVF-doxygen/html/html/search/variables_8.js +7 -7
  229. package/SVF-doxygen/html/html/search/variables_9.js +77 -77
  230. package/SVF-doxygen/html/html/search/variables_a.js +4 -4
  231. package/SVF-doxygen/html/html/search/variables_b.js +10 -10
  232. package/SVF-doxygen/html/html/search/variables_c.js +45 -45
  233. package/SVF-doxygen/html/html/search/variables_d.js +56 -56
  234. package/SVF-doxygen/html/html/search/variables_e.js +123 -123
  235. package/SVF-doxygen/html/html/search/variables_f.js +30 -30
  236. package/package.json +1 -1
  237. package/svf/include/Util/ExtAPI.h +5 -0
  238. package/svf/lib/Util/ExtAPI.cpp +73 -0
  239. package/svf/lib/Util/Options.cpp +2 -1
@@ -65,14 +65,134 @@ $(function() {
65
65
  </div>
66
66
  </div><!-- top -->
67
67
  <div class="header">
68
+ <div class="summary">
69
+ <a href="#func-members">Functions</a> </div>
68
70
  <div class="headertitle">
69
71
  <div class="title">ExtAPI.cpp File Reference</div> </div>
70
72
  </div><!--header-->
71
73
  <div class="contents">
72
74
  <div class="textblock"><code>#include &quot;<a class="el" href="ExtAPI_8h_source.html">Util/ExtAPI.h</a>&quot;</code><br />
75
+ <code>#include &quot;<a class="el" href="SVFUtil_8h_source.html">Util/SVFUtil.h</a>&quot;</code><br />
76
+ <code>#include &lt;sys/stat.h&gt;</code><br />
73
77
  </div>
74
78
  <p><a href="ExtAPI_8cpp_source.html">Go to the source code of this file.</a></p>
79
+ <table class="memberdecls">
80
+ <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
81
+ Functions</h2></td></tr>
82
+ <tr class="memitem:a424940f91f234b23bcc633f12269f935"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ExtAPI_8cpp.html#a424940f91f234b23bcc633f12269f935">GetStdoutFromCommand</a> (const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> &amp;command)</td></tr>
83
+ <tr class="separator:a424940f91f234b23bcc633f12269f935"><td class="memSeparator" colspan="2">&#160;</td></tr>
84
+ <tr class="memitem:a7d2ff3727892c4ee0eff596174eb5b84"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ExtAPI_8cpp.html#a7d2ff3727892c4ee0eff596174eb5b84">getFilePath</a> (const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> &amp;path)</td></tr>
85
+ <tr class="separator:a7d2ff3727892c4ee0eff596174eb5b84"><td class="memSeparator" colspan="2">&#160;</td></tr>
86
+ </table>
87
+ <h2 class="groupheader">Function Documentation</h2>
88
+ <a id="a7d2ff3727892c4ee0eff596174eb5b84"></a>
89
+ <h2 class="memtitle"><span class="permalink"><a href="#a7d2ff3727892c4ee0eff596174eb5b84">&#9670;&nbsp;</a></span>getFilePath()</h2>
90
+
91
+ <div class="memitem">
92
+ <div class="memproto">
93
+ <table class="mlabels">
94
+ <tr>
95
+ <td class="mlabels-left">
96
+ <table class="memname">
97
+ <tr>
98
+ <td class="memname">static <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> getFilePath </td>
99
+ <td>(</td>
100
+ <td class="paramtype">const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> &amp;&#160;</td>
101
+ <td class="paramname"><em>path</em></td><td>)</td>
102
+ <td></td>
103
+ </tr>
104
+ </table>
105
+ </td>
106
+ <td class="mlabels-right">
107
+ <span class="mlabels"><span class="mlabel">static</span></span> </td>
108
+ </tr>
109
+ </table>
110
+ </div><div class="memdoc">
111
+
112
+ <p class="definition">Definition at line <a class="el" href="ExtAPI_8cpp_source.html#l00081">81</a> of file <a class="el" href="ExtAPI_8cpp_source.html">ExtAPI.cpp</a>.</p>
113
+ <div class="fragment"><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div>
114
+ <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> bcFilePath = <a class="code" href="ExtAPI_8cpp.html#a424940f91f234b23bcc633f12269f935">GetStdoutFromCommand</a>(path);</div>
115
+ <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (path.compare(<span class="stringliteral">&quot;npm root&quot;</span>) == 0)</div>
116
+ <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; {</div>
117
+ <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordtype">int</span> os_flag = 1;</div>
118
+ <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="comment">// SVF installed via npm needs to determine the type of operating</span></div>
119
+ <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="comment">// system, otherwise the extapi.bc path may not be found.</span></div>
120
+ <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#ifdef linux</span></div>
121
+ <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="comment">// Linux os</span></div>
122
+ <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; os_flag = 0;</div>
123
+ <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; bcFilePath.append(<span class="stringliteral">&quot;/svf-lib/SVF-linux&quot;</span>);</div>
124
+ <div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif</span></div>
125
+ <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="comment">// Mac os</span></div>
126
+ <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">if</span> (os_flag == 1)</div>
127
+ <div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; {</div>
128
+ <div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; bcFilePath.append(<span class="stringliteral">&quot;/svf-lib/SVF-osx&quot;</span>);</div>
129
+ <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div>
130
+ <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; }</div>
131
+ <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; </div>
132
+ <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">if</span> (bcFilePath.back() != <span class="charliteral">&#39;/&#39;</span>)</div>
133
+ <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; bcFilePath.push_back(<span class="charliteral">&#39;/&#39;</span>);</div>
134
+ <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; bcFilePath.append(<a class="code" href="ExtAPI_8h.html#a02f944ad8948fa28a15d67ab1252573b">EXTAPI_BC_PATH</a>);</div>
135
+ <div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> bcFilePath;</div>
136
+ <div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;}</div>
137
+ </div><!-- fragment -->
138
+ </div>
139
+ </div>
140
+ <a id="a424940f91f234b23bcc633f12269f935"></a>
141
+ <h2 class="memtitle"><span class="permalink"><a href="#a424940f91f234b23bcc633f12269f935">&#9670;&nbsp;</a></span>GetStdoutFromCommand()</h2>
142
+
143
+ <div class="memitem">
144
+ <div class="memproto">
145
+ <table class="mlabels">
146
+ <tr>
147
+ <td class="mlabels-left">
148
+ <table class="memname">
149
+ <tr>
150
+ <td class="memname">static <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> GetStdoutFromCommand </td>
151
+ <td>(</td>
152
+ <td class="paramtype">const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> &amp;&#160;</td>
153
+ <td class="paramname"><em>command</em></td><td>)</td>
154
+ <td></td>
155
+ </tr>
156
+ </table>
157
+ </td>
158
+ <td class="mlabels-right">
159
+ <span class="mlabels"><span class="mlabel">static</span></span> </td>
160
+ </tr>
161
+ </table>
162
+ </div><div class="memdoc">
163
+
164
+ <p class="definition">Definition at line <a class="el" href="ExtAPI_8cpp_source.html#l00057">57</a> of file <a class="el" href="ExtAPI_8cpp_source.html">ExtAPI.cpp</a>.</p>
165
+ <div class="fragment"><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;{</div>
166
+ <div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordtype">char</span> <a class="code" href="cJSON_8h.html#a503753140aa27b00f99a3501280b2746">buffer</a>[128];</div>
167
+ <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> result = <span class="stringliteral">&quot;&quot;</span>;</div>
168
+ <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">// Open pipe to file</span></div>
169
+ <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; FILE* pipe = popen(command.c_str(), <span class="stringliteral">&quot;r&quot;</span>);</div>
170
+ <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">if</span> (!pipe)</div>
171
+ <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; {</div>
172
+ <div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;popen failed!&quot;</span>;</div>
173
+ <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; }</div>
174
+ <div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">// read till end of process:</span></div>
175
+ <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">while</span> (!feof(pipe))</div>
176
+ <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; {</div>
177
+ <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">// use buffer to read and add to result</span></div>
178
+ <div class="line"><a name="l00071"></a><span class="lineno"> 71</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>
179
+ <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; result += <a class="code" href="cJSON_8h.html#a503753140aa27b00f99a3501280b2746">buffer</a>;</div>
180
+ <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }</div>
181
+ <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; pclose(pipe);</div>
182
+ <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">// remove &quot;\n&quot;</span></div>
183
+ <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; result.erase(remove(result.begin(), result.end(), <span class="charliteral">&#39;\n&#39;</span>), result.end());</div>
184
+ <div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">return</span> result;</div>
185
+ <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;}</div>
186
+ </div><!-- fragment -->
187
+ </div>
188
+ </div>
75
189
  </div><!-- contents -->
190
+ <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#l00968">extapi.c:968</a></div></div>
191
+ <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#l00057">ExtAPI.cpp:57</a></div></div>
192
+ <div class="ttc" id="aExtAPI_8h_html_a02f944ad8948fa28a15d67ab1252573b"><div class="ttname"><a href="ExtAPI_8h.html#a02f944ad8948fa28a15d67ab1252573b">EXTAPI_BC_PATH</a></div><div class="ttdeci">#define 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>
193
+ <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>
194
+ <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>
195
+ <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>
76
196
  <!-- start footer part -->
77
197
  <hr class="footer"/><address class="footer"><small>
78
198
  Generated by &#160;<a href="http://www.doxygen.org/index.html">