svf-tools 1.0.596 → 1.0.597

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 (801) hide show
  1. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +4 -4
  2. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +2 -2
  3. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +7 -7
  4. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +11 -11
  5. package/SVF-doxygen/html/html/Andersen_8h_source.html +5 -5
  6. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +7 -7
  7. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +5 -5
  8. package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +8 -8
  9. package/SVF-doxygen/html/html/CFLGraphBuilder_8h_source.html +4 -4
  10. package/SVF-doxygen/html/html/CFLGraph_8cpp.html +3 -2
  11. package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +15 -16
  12. package/SVF-doxygen/html/html/CFLGraph_8h.html +4 -6
  13. package/SVF-doxygen/html/html/CFLGraph_8h_source.html +19 -20
  14. package/SVF-doxygen/html/html/CFLSolver_8cpp_source.html +4 -4
  15. package/SVF-doxygen/html/html/CFLStat_8cpp_source.html +1 -1
  16. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +8 -8
  17. package/SVF-doxygen/html/html/CHG_8cpp.html +6 -5
  18. package/SVF-doxygen/html/html/CHG_8cpp_source.html +26 -27
  19. package/SVF-doxygen/html/html/CHG_8h.html +4 -6
  20. package/SVF-doxygen/html/html/CHG_8h_source.html +13 -14
  21. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +3 -3
  22. package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +3 -3
  23. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +7 -7
  24. package/SVF-doxygen/html/html/ConsG_8cpp.html +3 -2
  25. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +27 -28
  26. package/SVF-doxygen/html/html/ConsG_8h.html +4 -6
  27. package/SVF-doxygen/html/html/ConsG_8h_source.html +10 -11
  28. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +7 -7
  29. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +3 -3
  30. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +4 -4
  31. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +21 -21
  32. package/SVF-doxygen/html/html/DCHG_8h.html +4 -6
  33. package/SVF-doxygen/html/html/DCHG_8h_source.html +15 -16
  34. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
  35. package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
  36. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +9 -9
  37. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +1 -1
  38. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +8 -8
  39. package/SVF-doxygen/html/html/DOTGraphTraits_8h.html +4 -3
  40. package/SVF-doxygen/html/html/DOTGraphTraits_8h_source.html +24 -24
  41. package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +4 -4
  42. package/SVF-doxygen/html/html/DoubleFreeChecker_8h_source.html +1 -1
  43. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +5 -5
  44. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +1 -1
  45. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +12 -12
  46. package/SVF-doxygen/html/html/FileChecker_8cpp_source.html +1 -1
  47. package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
  48. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +3 -3
  49. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
  50. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +8 -8
  51. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +6 -6
  52. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +1 -1
  53. package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +2 -2
  54. package/SVF-doxygen/html/html/GenericGraph_8h.html +8 -9
  55. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +125 -125
  56. package/SVF-doxygen/html/html/GraphPrinter_8h.html +3 -2
  57. package/SVF-doxygen/html/html/GraphPrinter_8h_source.html +7 -7
  58. package/SVF-doxygen/html/html/GraphReachSolver_8h_source.html +4 -4
  59. package/SVF-doxygen/html/html/GraphTraits_8h.html +20 -19
  60. package/SVF-doxygen/html/html/GraphTraits_8h_source.html +13 -13
  61. package/SVF-doxygen/html/html/GraphWriter_8cpp_source.html +1 -1
  62. package/SVF-doxygen/html/html/GraphWriter_8h.html +23 -22
  63. package/SVF-doxygen/html/html/GraphWriter_8h_source.html +48 -48
  64. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +7 -7
  65. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +2 -2
  66. package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +7 -7
  67. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +7 -7
  68. package/SVF-doxygen/html/html/ICFGStat_8h_source.html +3 -3
  69. package/SVF-doxygen/html/html/ICFG_8cpp.html +3 -2
  70. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +27 -28
  71. package/SVF-doxygen/html/html/ICFG_8h.html +4 -6
  72. package/SVF-doxygen/html/html/ICFG_8h_source.html +14 -15
  73. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +2 -2
  74. package/SVF-doxygen/html/html/IRGraph_8cpp.html +3 -2
  75. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +20 -21
  76. package/SVF-doxygen/html/html/IRGraph_8h.html +4 -6
  77. package/SVF-doxygen/html/html/IRGraph_8h_source.html +9 -10
  78. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +7 -7
  79. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +38 -39
  80. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +19 -19
  81. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +16 -9
  82. package/SVF-doxygen/html/html/LLVMUtil_8h.html +6 -0
  83. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +6 -4
  84. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +6 -6
  85. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +1 -1
  86. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +3 -3
  87. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +23 -23
  88. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +3 -3
  89. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +6 -6
  90. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +3 -3
  91. package/SVF-doxygen/html/html/MHP_8cpp_source.html +23 -23
  92. package/SVF-doxygen/html/html/MHP_8h_source.html +4 -4
  93. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +3 -3
  94. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +5 -5
  95. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +3 -3
  96. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +3 -3
  97. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +8 -8
  98. package/SVF-doxygen/html/html/MTA_8cpp_source.html +3 -3
  99. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
  100. package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
  101. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +18 -18
  102. package/SVF-doxygen/html/html/MemRegion_8h_source.html +2 -2
  103. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +21 -21
  104. package/SVF-doxygen/html/html/MemSSA_8h_source.html +2 -2
  105. package/SVF-doxygen/html/html/PCG_8cpp_source.html +18 -18
  106. package/SVF-doxygen/html/html/PCG_8h_source.html +3 -3
  107. package/SVF-doxygen/html/html/PTACallGraph_8cpp.html +3 -2
  108. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +27 -28
  109. package/SVF-doxygen/html/html/PTACallGraph_8h.html +4 -6
  110. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +17 -18
  111. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +6 -6
  112. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +6 -6
  113. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +3 -3
  114. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +18 -18
  115. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +3 -3
  116. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +7 -7
  117. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +1 -1
  118. package/SVF-doxygen/html/html/SCC_8h_source.html +4 -4
  119. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +1 -1
  120. package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +3 -3
  121. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +3 -3
  122. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +14 -14
  123. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +9 -9
  124. package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +3 -3
  125. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +7 -7
  126. package/SVF-doxygen/html/html/SVFG_8cpp.html +3 -2
  127. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +23 -24
  128. package/SVF-doxygen/html/html/SVFG_8h.html +1 -3
  129. package/SVF-doxygen/html/html/SVFG_8h_source.html +13 -14
  130. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +15 -14
  131. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +4 -4
  132. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +8 -8
  133. package/SVF-doxygen/html/html/SVFIR_8h_source.html +4 -4
  134. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
  135. package/SVF-doxygen/html/html/SVFModule_8h_source.html +4 -4
  136. package/SVF-doxygen/html/html/SVFStat_8cpp_source.html +9 -9
  137. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +9 -9
  138. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +12 -12
  139. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +4 -4
  140. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +9 -9
  141. package/SVF-doxygen/html/html/SVFValue_8cpp_source.html +16 -19
  142. package/SVF-doxygen/html/html/SVFValue_8h.html +3 -3
  143. package/SVF-doxygen/html/html/SVFValue_8h_source.html +210 -213
  144. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +7 -7
  145. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +13 -14
  146. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +3 -3
  147. package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +17 -17
  148. package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +6 -6
  149. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +8 -8
  150. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +7 -7
  151. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
  152. package/SVF-doxygen/html/html/SrcSnkSolver_8h_source.html +3 -4
  153. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +3 -3
  154. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +7 -10
  155. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +3 -4
  156. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +4 -4
  157. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +2 -2
  158. package/SVF-doxygen/html/html/TCT_8cpp.html +3 -2
  159. package/SVF-doxygen/html/html/TCT_8cpp_source.html +38 -39
  160. package/SVF-doxygen/html/html/TCT_8h.html +4 -6
  161. package/SVF-doxygen/html/html/TCT_8h_source.html +27 -28
  162. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +10 -10
  163. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +6 -6
  164. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +2 -2
  165. package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +7 -7
  166. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +8 -8
  167. package/SVF-doxygen/html/html/VFGEdge_8h_source.html +6 -6
  168. package/SVF-doxygen/html/html/VFGNode_8h_source.html +8 -8
  169. package/SVF-doxygen/html/html/VFG_8cpp.html +3 -2
  170. package/SVF-doxygen/html/html/VFG_8cpp_source.html +20 -21
  171. package/SVF-doxygen/html/html/VFG_8h.html +4 -6
  172. package/SVF-doxygen/html/html/VFG_8h_source.html +14 -15
  173. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +4 -4
  174. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +10 -10
  175. package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +3 -3
  176. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +8 -8
  177. package/SVF-doxygen/html/html/WPAPass_8h_source.html +1 -1
  178. package/SVF-doxygen/html/html/WPASolver_8h_source.html +4 -4
  179. package/SVF-doxygen/html/html/annotated.html +291 -291
  180. package/SVF-doxygen/html/html/cfl_8cpp_source.html +1 -1
  181. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +4 -4
  182. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +4 -4
  183. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +3 -3
  184. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +3 -3
  185. package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +2 -2
  186. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
  187. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +1 -1
  188. package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder.html +1 -1
  189. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +3 -3
  190. package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +1 -1
  191. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +33 -33
  192. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +1 -1
  193. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +7 -7
  194. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +1 -1
  195. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +10 -10
  196. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +1 -1
  197. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +7 -7
  198. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +17 -17
  199. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +1 -1
  200. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +4 -4
  201. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +1 -1
  202. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.html +4 -4
  203. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +12 -12
  204. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
  205. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +3 -3
  206. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +4 -4
  207. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +1 -1
  208. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +11 -11
  209. package/SVF-doxygen/html/html/classSVF_1_1CFLEdge.html +4 -4
  210. package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +4 -4
  211. package/SVF-doxygen/html/html/classSVF_1_1CFLNode-members.html +45 -44
  212. package/SVF-doxygen/html/html/classSVF_1_1CFLNode.html +29 -29
  213. package/SVF-doxygen/html/html/classSVF_1_1CFLSolver.html +4 -4
  214. package/SVF-doxygen/html/html/classSVF_1_1CFLStat.html +1 -1
  215. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +16 -16
  216. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +17 -17
  217. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +3 -3
  218. package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +1 -1
  219. package/SVF-doxygen/html/html/classSVF_1_1CallDirSVFGEdge.html +2 -2
  220. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +3 -3
  221. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +7 -7
  222. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +2 -2
  223. package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +1 -1
  224. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  225. package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +56 -56
  226. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
  227. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +3 -3
  228. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +1 -1
  229. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +30 -30
  230. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +18 -18
  231. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +12 -12
  232. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
  233. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +1 -1
  234. package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
  235. package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +2 -2
  236. package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +2 -2
  237. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadProc.html +1 -1
  238. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadStmt.html +2 -2
  239. package/SVF-doxygen/html/html/classSVF_1_1DCHEdge.html +2 -2
  240. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +35 -35
  241. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +3 -3
  242. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +16 -16
  243. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +1 -1
  244. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +3 -3
  245. package/SVF-doxygen/html/html/classSVF_1_1DirectSVFGEdge.html +2 -2
  246. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +1 -1
  247. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker-members.html +2 -2
  248. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +16 -16
  249. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +1 -1
  250. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +1 -1
  251. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +6 -6
  252. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +3 -4
  253. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +1 -1
  254. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +4 -4
  255. package/SVF-doxygen/html/html/classSVF_1_1FileChecker-members.html +2 -2
  256. package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +8 -8
  257. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +3 -3
  258. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +1 -1
  259. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +21 -21
  260. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +17 -17
  261. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +29 -29
  262. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +2 -2
  263. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +2 -2
  264. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +3 -3
  265. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +3 -3
  266. package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +6 -6
  267. package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +8 -8
  268. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.html +31 -31
  269. package/SVF-doxygen/html/html/classSVF_1_1GenericGraph.html +44 -44
  270. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +98 -97
  271. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
  272. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +3 -4
  273. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
  274. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +1 -1
  275. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +3 -4
  276. package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +1 -1
  277. package/SVF-doxygen/html/html/classSVF_1_1GraphPrinter-members.html +83 -0
  278. package/SVF-doxygen/html/html/classSVF_1_1GraphPrinter.html +236 -0
  279. package/SVF-doxygen/html/html/classSVF_1_1GraphReachSolver-members.html +2 -2
  280. package/SVF-doxygen/html/html/classSVF_1_1GraphReachSolver.html +12 -12
  281. package/SVF-doxygen/html/html/classSVF_1_1GraphWriter-members.html +100 -0
  282. package/SVF-doxygen/html/html/classSVF_1_1GraphWriter.html +882 -0
  283. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +19 -19
  284. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +12 -12
  285. package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge.html +7 -7
  286. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
  287. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +2 -2
  288. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +11 -11
  289. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +2 -2
  290. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
  291. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +3 -3
  292. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +2 -2
  293. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +3 -3
  294. package/SVF-doxygen/html/html/classSVF_1_1IntraDirSVFGEdge.html +2 -2
  295. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +1 -1
  296. package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +6 -6
  297. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +2 -2
  298. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +2 -2
  299. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +2 -2
  300. package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +7 -7
  301. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +69 -69
  302. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker-members.html +2 -2
  303. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +22 -22
  304. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
  305. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +1 -1
  306. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +3 -3
  307. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +50 -50
  308. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +7 -7
  309. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +55 -55
  310. package/SVF-doxygen/html/html/classSVF_1_1MHPValidator.html +1 -1
  311. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +22 -22
  312. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
  313. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +4 -4
  314. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +3 -3
  315. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +6 -6
  316. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +8 -8
  317. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +37 -37
  318. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +9 -9
  319. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
  320. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +36 -36
  321. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +3 -3
  322. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +4 -4
  323. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +3 -4
  324. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +3 -3
  325. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +28 -28
  326. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +3 -3
  327. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +25 -25
  328. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +3 -3
  329. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +7 -7
  330. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +9 -9
  331. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +2 -2
  332. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +40 -40
  333. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +7 -7
  334. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +4 -4
  335. package/SVF-doxygen/html/html/classSVF_1_1RaceValidator.html +1 -1
  336. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +3 -3
  337. package/SVF-doxygen/html/html/classSVF_1_1RetDirSVFGEdge.html +2 -2
  338. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +5 -5
  339. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +2 -2
  340. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  341. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +2 -2
  342. package/SVF-doxygen/html/html/classSVF_1_1SCCDetection-members.html +1 -1
  343. package/SVF-doxygen/html/html/classSVF_1_1SCCDetection.html +8 -8
  344. package/SVF-doxygen/html/html/classSVF_1_1SVFArgument-members.html +7 -9
  345. package/SVF-doxygen/html/html/classSVF_1_1SVFArgument.html +16 -20
  346. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock-members.html +8 -10
  347. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +56 -63
  348. package/SVF-doxygen/html/html/classSVF_1_1SVFBlackHoleValue-members.html +6 -8
  349. package/SVF-doxygen/html/html/classSVF_1_1SVFBlackHoleValue.html +7 -11
  350. package/SVF-doxygen/html/html/classSVF_1_1SVFCallInst-members.html +12 -14
  351. package/SVF-doxygen/html/html/classSVF_1_1SVFCallInst.html +34 -38
  352. package/SVF-doxygen/html/html/classSVF_1_1SVFConstant-members.html +6 -8
  353. package/SVF-doxygen/html/html/classSVF_1_1SVFConstant.html +5 -9
  354. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantData-members.html +6 -8
  355. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantData.html +7 -11
  356. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantFP-members.html +6 -8
  357. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantFP.html +10 -14
  358. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantInt-members.html +6 -8
  359. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantInt.html +14 -18
  360. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantNullPtr-members.html +6 -8
  361. package/SVF-doxygen/html/html/classSVF_1_1SVFConstantNullPtr.html +7 -11
  362. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction-members.html +23 -25
  363. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +115 -119
  364. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +16 -16
  365. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +1 -1
  366. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +43 -43
  367. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +9 -9
  368. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobalValue-members.html +9 -11
  369. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobalValue.html +14 -18
  370. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +35 -35
  371. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +48 -47
  372. package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction-members.html +11 -13
  373. package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction.html +31 -35
  374. package/SVF-doxygen/html/html/classSVF_1_1SVFLoopAndDomInfo.html +2 -2
  375. package/SVF-doxygen/html/html/classSVF_1_1SVFMetadataAsValue-members.html +6 -8
  376. package/SVF-doxygen/html/html/classSVF_1_1SVFMetadataAsValue.html +7 -11
  377. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +3 -3
  378. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherValue-members.html +6 -8
  379. package/SVF-doxygen/html/html/classSVF_1_1SVFOtherValue.html +5 -9
  380. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +9 -9
  381. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +9 -9
  382. package/SVF-doxygen/html/html/classSVF_1_1SVFType.html +3 -3
  383. package/SVF-doxygen/html/html/classSVF_1_1SVFValue-members.html +25 -28
  384. package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +38 -128
  385. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +12 -12
  386. package/SVF-doxygen/html/html/classSVF_1_1SVFVirtualCallInst-members.html +14 -16
  387. package/SVF-doxygen/html/html/classSVF_1_1SVFVirtualCallInst.html +29 -33
  388. package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +46 -46
  389. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +13 -13
  390. package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +2 -2
  391. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA-members.html +2 -2
  392. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +16 -16
  393. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkSolver-members.html +2 -2
  394. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkSolver.html +12 -12
  395. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +1 -1
  396. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +9 -9
  397. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +5 -5
  398. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
  399. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +2 -2
  400. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder-members.html +2 -3
  401. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +21 -54
  402. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +5 -5
  403. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +72 -72
  404. package/SVF-doxygen/html/html/classSVF_1_1TCTNode.html +1 -1
  405. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
  406. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
  407. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +11 -11
  408. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +5 -5
  409. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +3 -3
  410. package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge.html +4 -4
  411. package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge.html +4 -4
  412. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +2 -2
  413. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +1 -1
  414. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +12 -12
  415. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +5 -5
  416. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +3 -3
  417. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +21 -21
  418. package/SVF-doxygen/html/html/classSVF_1_1VFGEdge.html +13 -13
  419. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
  420. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +3 -4
  421. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +2 -2
  422. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +1 -1
  423. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +35 -35
  424. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +6 -6
  425. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +4 -4
  426. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver-members.html +1 -1
  427. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +4 -4
  428. package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +7 -7
  429. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +9 -9
  430. package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +4 -4
  431. package/SVF-doxygen/html/html/classSVF_1_1WPASolver-members.html +1 -1
  432. package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +8 -8
  433. package/SVF-doxygen/html/html/classSVF_1_1iter__adaptor__base-members.html +112 -0
  434. package/SVF-doxygen/html/html/classSVF_1_1iter__adaptor__base.html +633 -0
  435. package/SVF-doxygen/html/html/classSVF_1_1iter__adaptor__base.png +0 -0
  436. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base-members.html +102 -0
  437. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base.html +787 -0
  438. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base.png +0 -0
  439. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base_1_1ReferenceProxy-members.html +84 -0
  440. package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base_1_1ReferenceProxy.html +229 -0
  441. package/SVF-doxygen/html/html/classSVF_1_1iter__range-members.html +87 -0
  442. package/SVF-doxygen/html/html/classSVF_1_1iter__range.html +342 -0
  443. package/SVF-doxygen/html/html/classSVF_1_1mapped__iter-members.html +112 -0
  444. package/SVF-doxygen/html/html/classSVF_1_1mapped__iter.html +322 -0
  445. package/SVF-doxygen/html/html/classSVF_1_1mapped__iter.png +0 -0
  446. package/SVF-doxygen/html/html/classSVF_1_1pointer__iterator-members.html +113 -0
  447. package/SVF-doxygen/html/html/classSVF_1_1pointer__iterator.html +343 -0
  448. package/SVF-doxygen/html/html/classSVF_1_1pointer__iterator.png +0 -0
  449. package/SVF-doxygen/html/html/classes.html +59 -59
  450. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  451. package/SVF-doxygen/html/html/fastcluster__R__dm_8cpp_8inc_source.html +2 -2
  452. package/SVF-doxygen/html/html/functions_a.html +1 -1
  453. package/SVF-doxygen/html/html/functions_b.html +4 -4
  454. package/SVF-doxygen/html/html/functions_c.html +20 -18
  455. package/SVF-doxygen/html/html/functions_d.html +20 -20
  456. package/SVF-doxygen/html/html/functions_e.html +14 -16
  457. package/SVF-doxygen/html/html/functions_eval_i.html +2 -2
  458. package/SVF-doxygen/html/html/functions_f.html +1 -1
  459. package/SVF-doxygen/html/html/functions_func.html +1 -1
  460. package/SVF-doxygen/html/html/functions_func_b.html +2 -2
  461. package/SVF-doxygen/html/html/functions_func_c.html +4 -4
  462. package/SVF-doxygen/html/html/functions_func_d.html +14 -14
  463. package/SVF-doxygen/html/html/functions_func_e.html +8 -8
  464. package/SVF-doxygen/html/html/functions_func_g.html +72 -72
  465. package/SVF-doxygen/html/html/functions_func_h.html +4 -7
  466. package/SVF-doxygen/html/html/functions_func_i.html +17 -20
  467. package/SVF-doxygen/html/html/functions_func_m.html +1 -1
  468. package/SVF-doxygen/html/html/functions_func_n.html +3 -3
  469. package/SVF-doxygen/html/html/functions_func_o.html +24 -24
  470. package/SVF-doxygen/html/html/functions_func_p.html +4 -4
  471. package/SVF-doxygen/html/html/functions_func_r.html +2 -2
  472. package/SVF-doxygen/html/html/functions_func_s.html +15 -18
  473. package/SVF-doxygen/html/html/functions_func_w.html +8 -8
  474. package/SVF-doxygen/html/html/functions_g.html +84 -82
  475. package/SVF-doxygen/html/html/functions_h.html +6 -12
  476. package/SVF-doxygen/html/html/functions_i.html +40 -43
  477. package/SVF-doxygen/html/html/functions_l.html +3 -3
  478. package/SVF-doxygen/html/html/functions_m.html +1 -1
  479. package/SVF-doxygen/html/html/functions_n.html +30 -30
  480. package/SVF-doxygen/html/html/functions_o.html +39 -43
  481. package/SVF-doxygen/html/html/functions_p.html +16 -16
  482. package/SVF-doxygen/html/html/functions_r.html +8 -6
  483. package/SVF-doxygen/html/html/functions_rela.html +3 -3
  484. package/SVF-doxygen/html/html/functions_s.html +22 -25
  485. package/SVF-doxygen/html/html/functions_t.html +3 -3
  486. package/SVF-doxygen/html/html/functions_type_b.html +1 -1
  487. package/SVF-doxygen/html/html/functions_type_c.html +7 -7
  488. package/SVF-doxygen/html/html/functions_type_d.html +4 -4
  489. package/SVF-doxygen/html/html/functions_type_e.html +4 -4
  490. package/SVF-doxygen/html/html/functions_type_g.html +6 -6
  491. package/SVF-doxygen/html/html/functions_type_i.html +4 -4
  492. package/SVF-doxygen/html/html/functions_type_n.html +27 -27
  493. package/SVF-doxygen/html/html/functions_type_p.html +3 -3
  494. package/SVF-doxygen/html/html/functions_type_r.html +2 -2
  495. package/SVF-doxygen/html/html/functions_type_v.html +2 -2
  496. package/SVF-doxygen/html/html/functions_v.html +5 -5
  497. package/SVF-doxygen/html/html/functions_vars_b.html +1 -1
  498. package/SVF-doxygen/html/html/functions_vars_d.html +1 -1
  499. package/SVF-doxygen/html/html/functions_vars_e.html +1 -1
  500. package/SVF-doxygen/html/html/functions_vars_f.html +1 -1
  501. package/SVF-doxygen/html/html/functions_vars_g.html +7 -5
  502. package/SVF-doxygen/html/html/functions_vars_h.html +0 -3
  503. package/SVF-doxygen/html/html/functions_vars_i.html +6 -6
  504. package/SVF-doxygen/html/html/functions_vars_o.html +1 -1
  505. package/SVF-doxygen/html/html/functions_vars_p.html +1 -1
  506. package/SVF-doxygen/html/html/functions_w.html +17 -17
  507. package/SVF-doxygen/html/html/hierarchy.html +159 -159
  508. package/SVF-doxygen/html/html/include_2MTA_2MTAResultValidator_8h_source.html +4 -4
  509. package/SVF-doxygen/html/html/iterator_8h.html +16 -15
  510. package/SVF-doxygen/html/html/iterator_8h_source.html +53 -53
  511. package/SVF-doxygen/html/html/iterator__range_8h.html +9 -8
  512. package/SVF-doxygen/html/html/iterator__range_8h_source.html +11 -11
  513. package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
  514. package/SVF-doxygen/html/html/namespaceSVF.html +575 -9
  515. package/SVF-doxygen/html/html/namespaceSVF_1_1DOT.html +107 -0
  516. package/SVF-doxygen/html/html/namespaceSVF_1_1GraphProgram.html +122 -0
  517. package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +65 -7
  518. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +3 -3
  519. package/SVF-doxygen/html/html/namespacellvm.html +1 -572
  520. package/SVF-doxygen/html/html/namespacemembers_c.html +3 -3
  521. package/SVF-doxygen/html/html/namespacemembers_d.html +1 -1
  522. package/SVF-doxygen/html/html/namespacemembers_e.html +1 -1
  523. package/SVF-doxygen/html/html/namespacemembers_enum.html +1 -1
  524. package/SVF-doxygen/html/html/namespacemembers_eval.html +5 -5
  525. package/SVF-doxygen/html/html/namespacemembers_f.html +1 -1
  526. package/SVF-doxygen/html/html/namespacemembers_func_c.html +2 -2
  527. package/SVF-doxygen/html/html/namespacemembers_func_e.html +1 -1
  528. package/SVF-doxygen/html/html/namespacemembers_func_i.html +8 -5
  529. package/SVF-doxygen/html/html/namespacemembers_func_m.html +4 -4
  530. package/SVF-doxygen/html/html/namespacemembers_func_n.html +1 -1
  531. package/SVF-doxygen/html/html/namespacemembers_func_v.html +1 -1
  532. package/SVF-doxygen/html/html/namespacemembers_func_w.html +1 -1
  533. package/SVF-doxygen/html/html/namespacemembers_g.html +1 -1
  534. package/SVF-doxygen/html/html/namespacemembers_i.html +6 -3
  535. package/SVF-doxygen/html/html/namespacemembers_m.html +4 -4
  536. package/SVF-doxygen/html/html/namespacemembers_n.html +3 -3
  537. package/SVF-doxygen/html/html/namespacemembers_r.html +1 -1
  538. package/SVF-doxygen/html/html/namespacemembers_t.html +1 -1
  539. package/SVF-doxygen/html/html/namespacemembers_type_g.html +1 -1
  540. package/SVF-doxygen/html/html/namespacemembers_type_r.html +1 -1
  541. package/SVF-doxygen/html/html/namespacemembers_v.html +1 -1
  542. package/SVF-doxygen/html/html/namespacemembers_w.html +1 -1
  543. package/SVF-doxygen/html/html/namespaces.html +5 -5
  544. package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
  545. package/SVF-doxygen/html/html/search/all_1.js +1 -1
  546. package/SVF-doxygen/html/html/search/all_10.js +12 -12
  547. package/SVF-doxygen/html/html/search/all_11.js +7 -7
  548. package/SVF-doxygen/html/html/search/all_12.js +7 -6
  549. package/SVF-doxygen/html/html/search/all_13.js +7 -7
  550. package/SVF-doxygen/html/html/search/all_15.js +4 -4
  551. package/SVF-doxygen/html/html/search/all_16.js +10 -10
  552. package/SVF-doxygen/html/html/search/all_2.js +3 -3
  553. package/SVF-doxygen/html/html/search/all_3.js +7 -7
  554. package/SVF-doxygen/html/html/search/all_4.js +20 -20
  555. package/SVF-doxygen/html/html/search/all_5.js +9 -9
  556. package/SVF-doxygen/html/html/search/all_6.js +2 -2
  557. package/SVF-doxygen/html/html/search/all_7.js +87 -87
  558. package/SVF-doxygen/html/html/search/all_8.js +1 -3
  559. package/SVF-doxygen/html/html/search/all_9.js +23 -23
  560. package/SVF-doxygen/html/html/search/all_c.js +2 -4
  561. package/SVF-doxygen/html/html/search/all_d.js +5 -5
  562. package/SVF-doxygen/html/html/search/all_e.js +11 -11
  563. package/SVF-doxygen/html/html/search/all_f.js +19 -19
  564. package/SVF-doxygen/html/html/search/classes_3.js +13 -13
  565. package/SVF-doxygen/html/html/search/classes_6.js +64 -64
  566. package/SVF-doxygen/html/html/search/classes_8.js +10 -10
  567. package/SVF-doxygen/html/html/search/classes_a.js +1 -1
  568. package/SVF-doxygen/html/html/search/classes_d.js +2 -2
  569. package/SVF-doxygen/html/html/search/classes_e.js +1 -1
  570. package/SVF-doxygen/html/html/search/enums_8.js +1 -1
  571. package/SVF-doxygen/html/html/search/enumvalues_10.js +1 -1
  572. package/SVF-doxygen/html/html/search/enumvalues_2.js +1 -1
  573. package/SVF-doxygen/html/html/search/enumvalues_3.js +1 -1
  574. package/SVF-doxygen/html/html/search/enumvalues_5.js +1 -1
  575. package/SVF-doxygen/html/html/search/enumvalues_8.js +2 -2
  576. package/SVF-doxygen/html/html/search/enumvalues_b.js +1 -1
  577. package/SVF-doxygen/html/html/search/functions_0.js +1 -1
  578. package/SVF-doxygen/html/html/search/functions_1.js +1 -1
  579. package/SVF-doxygen/html/html/search/functions_10.js +2 -2
  580. package/SVF-doxygen/html/html/search/functions_11.js +1 -2
  581. package/SVF-doxygen/html/html/search/functions_14.js +1 -1
  582. package/SVF-doxygen/html/html/search/functions_15.js +8 -8
  583. package/SVF-doxygen/html/html/search/functions_2.js +4 -4
  584. package/SVF-doxygen/html/html/search/functions_3.js +5 -5
  585. package/SVF-doxygen/html/html/search/functions_4.js +7 -7
  586. package/SVF-doxygen/html/html/search/functions_6.js +21 -21
  587. package/SVF-doxygen/html/html/search/functions_7.js +1 -2
  588. package/SVF-doxygen/html/html/search/functions_8.js +8 -8
  589. package/SVF-doxygen/html/html/search/functions_c.js +5 -5
  590. package/SVF-doxygen/html/html/search/functions_d.js +4 -4
  591. package/SVF-doxygen/html/html/search/functions_e.js +14 -14
  592. package/SVF-doxygen/html/html/search/functions_f.js +4 -4
  593. package/SVF-doxygen/html/html/search/namespaces_0.js +0 -2
  594. package/SVF-doxygen/html/html/search/namespaces_1.js +2 -0
  595. package/SVF-doxygen/html/html/search/related_9.js +3 -3
  596. package/SVF-doxygen/html/html/search/typedefs_1.js +1 -1
  597. package/SVF-doxygen/html/html/search/typedefs_13.js +1 -1
  598. package/SVF-doxygen/html/html/search/typedefs_2.js +2 -2
  599. package/SVF-doxygen/html/html/search/typedefs_3.js +2 -2
  600. package/SVF-doxygen/html/html/search/typedefs_4.js +1 -1
  601. package/SVF-doxygen/html/html/search/typedefs_6.js +3 -3
  602. package/SVF-doxygen/html/html/search/typedefs_7.js +2 -2
  603. package/SVF-doxygen/html/html/search/typedefs_c.js +4 -4
  604. package/SVF-doxygen/html/html/search/typedefs_e.js +2 -2
  605. package/SVF-doxygen/html/html/search/typedefs_f.js +2 -2
  606. package/SVF-doxygen/html/html/search/variables_10.js +1 -1
  607. package/SVF-doxygen/html/html/search/variables_13.js +3 -3
  608. package/SVF-doxygen/html/html/search/variables_2.js +1 -1
  609. package/SVF-doxygen/html/html/search/variables_4.js +1 -1
  610. package/SVF-doxygen/html/html/search/variables_5.js +1 -1
  611. package/SVF-doxygen/html/html/search/variables_6.js +1 -1
  612. package/SVF-doxygen/html/html/search/variables_7.js +2 -2
  613. package/SVF-doxygen/html/html/search/variables_8.js +0 -1
  614. package/SVF-doxygen/html/html/search/variables_9.js +5 -5
  615. package/SVF-doxygen/html/html/search/variables_c.js +1 -1
  616. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  617. package/SVF-doxygen/html/html/search/variables_f.js +1 -1
  618. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits-members.html +99 -0
  619. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits.html +193 -0
  620. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits.png +0 -0
  621. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4-members.html +105 -0
  622. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.html +443 -0
  623. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.png +0 -0
  624. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4-members.html +104 -0
  625. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4.html +388 -0
  626. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4.png +0 -0
  627. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4-members.html +106 -0
  628. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +481 -0
  629. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.png +0 -0
  630. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ICFG_01_5_01_4-members.html +106 -0
  631. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +475 -0
  632. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.png +0 -0
  633. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4-members.html +107 -0
  634. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +486 -0
  635. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.png +0 -0
  636. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4-members.html +106 -0
  637. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +457 -0
  638. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.png +0 -0
  639. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4-members.html +108 -0
  640. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +595 -0
  641. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.png +0 -0
  642. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01TCT_01_5_01_4-members.html +105 -0
  643. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01TCT_01_5_01_4.html +409 -0
  644. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01TCT_01_5_01_4.png +0 -0
  645. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01VFG_01_5_01_4-members.html +107 -0
  646. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +543 -0
  647. package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01VFG_01_5_01_4.png +0 -0
  648. package/SVF-doxygen/html/html/structSVF_1_1DefaultDOTGraphTraits-members.html +99 -0
  649. package/SVF-doxygen/html/html/structSVF_1_1DefaultDOTGraphTraits.html +855 -0
  650. package/SVF-doxygen/html/html/structSVF_1_1DefaultDOTGraphTraits.png +0 -0
  651. package/SVF-doxygen/html/html/structSVF_1_1GenericEdge_1_1equalGEdge.html +3 -3
  652. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits-members.html +81 -0
  653. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits.html +116 -0
  654. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01Inverse_3_01T_01_4_01_4_01_4-members.html +81 -0
  655. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01Inverse_3_01T_01_4_01_4_01_4.html +106 -0
  656. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01Inverse_3_01T_01_4_01_4_01_4.png +0 -0
  657. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CFLNode_01_5_01_4_01_4-members.html +81 -0
  658. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CFLNode_01_5_01_4_01_4.html +110 -0
  659. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CFLNode_01_5_01_4_01_4.png +0 -0
  660. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CHNode_01_5_01_4_01_4-members.html +81 -0
  661. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CHNode_01_5_01_4_01_4.html +110 -0
  662. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CHNode_01_5_01_4_01_4.png +0 -0
  663. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ConstraintNode_01_5_01_4_01_4-members.html +81 -0
  664. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ConstraintNode_01_5_01_4_01_4.html +110 -0
  665. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ConstraintNode_01_5_01_4_01_4.png +0 -0
  666. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1DCHNode_01_5_01_4_01_4-members.html +81 -0
  667. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1DCHNode_01_5_01_4_01_4.html +110 -0
  668. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1DCHNode_01_5_01_4_01_4.png +0 -0
  669. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_4_01_4-members.html +88 -0
  670. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_4_01_4.html +324 -0
  671. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ICFGNode_01_5_01_4_01_4-members.html +81 -0
  672. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ICFGNode_01_5_01_4_01_4.html +110 -0
  673. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1ICFGNode_01_5_01_4_01_4.png +0 -0
  674. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1PTACallGraphNode_01_5_01_4_01_4-members.html +81 -0
  675. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1PTACallGraphNode_01_5_01_4_01_4.html +110 -0
  676. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1PTACallGraphNode_01_5_01_4_01_4.png +0 -0
  677. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1SVFVar_01_5_01_4_01_4-members.html +81 -0
  678. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1SVFVar_01_5_01_4_01_4.html +110 -0
  679. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1SVFVar_01_5_01_4_01_4.png +0 -0
  680. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1TCTNode_01_5_01_4_01_4-members.html +81 -0
  681. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1TCTNode_01_5_01_4_01_4.html +110 -0
  682. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1TCTNode_01_5_01_4_01_4.png +0 -0
  683. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1VFGNode_01_5_01_4_01_4-members.html +81 -0
  684. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1VFGNode_01_5_01_4_01_4.html +110 -0
  685. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1VFGNode_01_5_01_4_01_4.png +0 -0
  686. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4-members.html +81 -0
  687. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4.html +126 -0
  688. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4.png +0 -0
  689. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLNode_01_5_01_4-members.html +81 -0
  690. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLNode_01_5_01_4.html +106 -0
  691. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFLNode_01_5_01_4.png +0 -0
  692. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHGraph_01_5_01_4-members.html +81 -0
  693. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHGraph_01_5_01_4.html +126 -0
  694. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHGraph_01_5_01_4.png +0 -0
  695. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHNode_01_5_01_4-members.html +81 -0
  696. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHNode_01_5_01_4.html +106 -0
  697. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CHNode_01_5_01_4.png +0 -0
  698. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintGraph_01_5_01_4-members.html +81 -0
  699. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintGraph_01_5_01_4.html +126 -0
  700. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintGraph_01_5_01_4.png +0 -0
  701. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintNode_01_5_01_4-members.html +81 -0
  702. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintNode_01_5_01_4.html +106 -0
  703. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ConstraintNode_01_5_01_4.png +0 -0
  704. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHGraph_01_5_01_4-members.html +81 -0
  705. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHGraph_01_5_01_4.html +126 -0
  706. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHGraph_01_5_01_4.png +0 -0
  707. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHNode_01_5_01_4-members.html +81 -0
  708. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHNode_01_5_01_4.html +106 -0
  709. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHNode_01_5_01_4.png +0 -0
  710. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericGraph_3_01NodeTy_00_01EdgeTy_01_4_01_5_4-members.html +99 -0
  711. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericGraph_3_01NodeTy_00_01EdgeTy_01_4_01_5_4.html +467 -0
  712. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericGraph_3_01NodeTy_00_01EdgeTy_01_4_01_5_4.png +0 -0
  713. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_01_4-members.html +89 -0
  714. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_01_4.html +367 -0
  715. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_01_4.png +0 -0
  716. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFGNode_01_5_01_4-members.html +81 -0
  717. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFGNode_01_5_01_4.html +106 -0
  718. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFGNode_01_5_01_4.png +0 -0
  719. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFG_01_5_01_4-members.html +81 -0
  720. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFG_01_5_01_4.html +126 -0
  721. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1ICFG_01_5_01_4.png +0 -0
  722. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1IRGraph_01_5_01_4-members.html +81 -0
  723. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1IRGraph_01_5_01_4.html +126 -0
  724. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1IRGraph_01_5_01_4.png +0 -0
  725. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraphNode_01_5_01_4-members.html +81 -0
  726. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraphNode_01_5_01_4.html +106 -0
  727. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraphNode_01_5_01_4.png +0 -0
  728. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraph_01_5_01_4-members.html +81 -0
  729. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraph_01_5_01_4.html +126 -0
  730. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1PTACallGraph_01_5_01_4.png +0 -0
  731. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFG_01_5_01_4-members.html +81 -0
  732. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFG_01_5_01_4.html +126 -0
  733. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFG_01_5_01_4.png +0 -0
  734. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFVar_01_5_01_4-members.html +81 -0
  735. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFVar_01_5_01_4.html +106 -0
  736. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFVar_01_5_01_4.png +0 -0
  737. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCTNode_01_5_01_4-members.html +81 -0
  738. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCTNode_01_5_01_4.html +106 -0
  739. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCTNode_01_5_01_4.png +0 -0
  740. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCT_01_5_01_4-members.html +81 -0
  741. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCT_01_5_01_4.html +126 -0
  742. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1TCT_01_5_01_4.png +0 -0
  743. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFGNode_01_5_01_4-members.html +81 -0
  744. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFGNode_01_5_01_4.html +106 -0
  745. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFGNode_01_5_01_4.png +0 -0
  746. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFG_01_5_01_4-members.html +81 -0
  747. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFG_01_5_01_4.html +126 -0
  748. package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1VFG_01_5_01_4.png +0 -0
  749. package/SVF-doxygen/html/html/structSVF_1_1Inverse-members.html +82 -0
  750. package/SVF-doxygen/html/html/structSVF_1_1Inverse.html +154 -0
  751. package/SVF-doxygen/html/html/structSVF_1_1pointee__iter-members.html +111 -0
  752. package/SVF-doxygen/html/html/structSVF_1_1pointee__iter.html +279 -0
  753. package/SVF-doxygen/html/html/structSVF_1_1pointee__iter.png +0 -0
  754. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +3 -3
  755. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtProc_01_4.html +1 -1
  756. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmt_01_4.html +1 -1
  757. package/SVF-doxygen/html/html/svf-ex_8cpp.html +9 -9
  758. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +7 -7
  759. package/SVF-doxygen/html/html/tools_2MTA_2MTAResultValidator_8h_source.html +4 -4
  760. package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
  761. package/include/Graphs/CFLGraph.h +6 -6
  762. package/include/Graphs/CHG.h +6 -6
  763. package/include/Graphs/ConsG.h +6 -6
  764. package/include/Graphs/DOTGraphTraits.h +3 -3
  765. package/include/Graphs/GenericGraph.h +10 -9
  766. package/include/Graphs/GraphPrinter.h +2 -2
  767. package/include/Graphs/GraphTraits.h +29 -29
  768. package/include/Graphs/GraphWriter.h +6 -6
  769. package/include/Graphs/ICFG.h +6 -6
  770. package/include/Graphs/IRGraph.h +6 -7
  771. package/include/Graphs/PTACallGraph.h +6 -6
  772. package/include/Graphs/SVFG.h +6 -6
  773. package/include/Graphs/VFG.h +6 -6
  774. package/include/MTA/TCT.h +6 -6
  775. package/include/SABER/SrcSnkSolver.h +2 -2
  776. package/include/SVF-LLVM/DCHG.h +6 -6
  777. package/include/SVF-LLVM/LLVMUtil.h +5 -0
  778. package/include/SVF-LLVM/SymbolTableBuilder.h +0 -3
  779. package/include/SVFIR/SVFValue.h +2 -11
  780. package/include/SVFIR/SVFVariables.h +5 -5
  781. package/include/Util/GraphReachSolver.h +2 -2
  782. package/include/Util/SCC.h +1 -1
  783. package/include/Util/iterator.h +32 -32
  784. package/include/Util/iterator_range.h +11 -11
  785. package/include/WPA/WPASolver.h +1 -1
  786. package/lib/Graphs/CFLGraph.cpp +2 -2
  787. package/lib/Graphs/CHG.cpp +2 -2
  788. package/lib/Graphs/ConsG.cpp +2 -2
  789. package/lib/Graphs/GraphWriter.cpp +1 -1
  790. package/lib/Graphs/ICFG.cpp +2 -2
  791. package/lib/Graphs/IRGraph.cpp +2 -2
  792. package/lib/Graphs/PTACallGraph.cpp +2 -2
  793. package/lib/Graphs/SVFG.cpp +1 -1
  794. package/lib/Graphs/VFG.cpp +2 -2
  795. package/lib/MTA/TCT.cpp +1 -1
  796. package/lib/SVF-LLVM/LLVMModule.cpp +0 -2
  797. package/lib/SVF-LLVM/LLVMUtil.cpp +40 -0
  798. package/lib/SVF-LLVM/SVFIRBuilder.cpp +1 -1
  799. package/lib/SVF-LLVM/SymbolTableBuilder.cpp +0 -34
  800. package/lib/SVFIR/SVFValue.cpp +0 -1
  801. package/package.json +1 -1
@@ -66,63 +66,63 @@ $(function() {
66
66
  <div class="title">iterator.h</div> </div>
67
67
  </div><!--header-->
68
68
  <div class="contents">
69
- <a href="iterator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">//===- iterator.h - Utilities for using and defining iterators --*- C++ -*-===//</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">// See https://llvm.org/LICENSE.txt for license information.</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment">// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment">//===----------------------------------------------------------------------===//</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#ifndef LLVM_ADT_ITERATOR_H</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#define LLVM_ADT_ITERATOR_H</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="iterator__range_8h.html">Util/iterator_range.h</a>&quot;</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#include &lt;iterator&gt;</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="preprocessor">#include &lt;type_traits&gt;</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="preprocessor">#include &lt;utility&gt;</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacellvm.html">llvm</a></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;{</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> DerivedT, <span class="keyword">typename</span> IteratorCategoryT, <span class="keyword">typename</span> T,</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keyword">typename</span> DifferenceTypeT = std::ptrdiff_t, <span class="keyword">typename</span> PointerT = T *,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">typename</span> ReferenceT = T &amp;&gt;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html"> 67</a></span>&#160;<span class="keyword">class </span><a class="code" href="classllvm_1_1iterator__facade__base.html">iterator_facade_base</a></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;{</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a0fb41b5becfd488c52fb8c77d13fbcbc"> 70</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classllvm_1_1iterator__facade__base.html#a0fb41b5becfd488c52fb8c77d13fbcbc">iterator_category</a> = IteratorCategoryT;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a36fb299f78c975d65ffcef4baa31b7f6"> 71</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classllvm_1_1iterator__facade__base.html#a36fb299f78c975d65ffcef4baa31b7f6">value_type</a> = T;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a7e07dfa56b74ed115bdddd442e8184e6"> 72</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classllvm_1_1iterator__facade__base.html#a7e07dfa56b74ed115bdddd442e8184e6">difference_type</a> = DifferenceTypeT;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#ae2d9deb2dce97bf6cf45faf988c30a3b"> 73</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classllvm_1_1iterator__facade__base.html#ae2d9deb2dce97bf6cf45faf988c30a3b">pointer</a> = PointerT;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a9ac08db5b07aefa9e82e65806804268b"> 74</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classllvm_1_1iterator__facade__base.html#a9ac08db5b07aefa9e82e65806804268b">reference</a> = ReferenceT;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keyword">protected</span>:</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">enum</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; {</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56"> 79</a></span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56">IsRandomAccess</a> = std::is_base_of&lt;std::random_access_iterator_tag,</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; IteratorCategoryT&gt;::value,</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4e1f229fa73b6b5c2f25734ab347c51f"> 81</a></span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4e1f229fa73b6b5c2f25734ab347c51f">IsBidirectional</a> = std::is_base_of&lt;std::bidirectional_iterator_tag,</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; IteratorCategoryT&gt;::value,</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; };</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html"> 90</a></span>&#160; <span class="keyword">class </span><a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html">ReferenceProxy</a></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; {</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ae839596dce7d66788c89951710111945"> 92</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ae839596dce7d66788c89951710111945">iterator_facade_base</a>;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2"> 94</a></span>&#160; DerivedT <a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2">I</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ab871b88a7116b9aa362a92bd47ddd776"> 96</a></span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ab871b88a7116b9aa362a92bd47ddd776">ReferenceProxy</a>(DerivedT I) : I(<a class="code" href="namespacestd.html">std</a>::<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">move</a>(I)) {}</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#adc2a6b29380e0cbd28105a3ab0fe49d4"> 99</a></span>&#160; <span class="keyword">operator</span> ReferenceT()<span class="keyword"> const</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> *<a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2">I</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; };</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#acf61699425762fc11a314213e3bc6ef4"> 106</a></span>&#160; DerivedT <a class="code" href="classllvm_1_1iterator__facade__base.html#acf61699425762fc11a314213e3bc6ef4">operator+</a>(DifferenceTypeT <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)<span class="keyword"> const</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; static_assert(std::is_base_of&lt;iterator_facade_base, DerivedT&gt;::value,</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="stringliteral">&quot;Must pass the derived type to this template!&quot;</span>);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; static_assert(</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56">IsRandomAccess</a>,</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="stringliteral">&quot;The &#39;+&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; DerivedT tmp = *<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; tmp += <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a56831a09ff0a972cfb02376aaab2caab"> 117</a></span>&#160; <span class="keyword">friend</span> DerivedT <a class="code" href="classllvm_1_1iterator__facade__base.html#a56831a09ff0a972cfb02376aaab2caab">operator+</a>(DifferenceTypeT <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>, <span class="keyword">const</span> DerivedT &amp;i)</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; static_assert(</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56">IsRandomAccess</a>,</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="stringliteral">&quot;The &#39;+&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> i + <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a491d3989cc90d99cdb1f123d141b87cb"> 124</a></span>&#160; DerivedT <a class="code" href="classllvm_1_1iterator__facade__base.html#a491d3989cc90d99cdb1f123d141b87cb">operator-</a>(DifferenceTypeT <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)<span class="keyword"> const</span></div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; static_assert(</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56">IsRandomAccess</a>,</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="stringliteral">&quot;The &#39;-&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; DerivedT tmp = *<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; tmp -= <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a5e76a6059a007866f3a307fdaf8f3401"> 134</a></span>&#160; DerivedT &amp;<a class="code" href="classllvm_1_1iterator__facade__base.html#a5e76a6059a007866f3a307fdaf8f3401">operator++</a>()</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; static_assert(std::is_base_of&lt;iterator_facade_base, DerivedT&gt;::value,</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="stringliteral">&quot;Must pass the derived type to this template!&quot;</span>);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>+=(1);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; }</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a668b849a4f26755eae386315d5ea363c"> 140</a></span>&#160; DerivedT <a class="code" href="classllvm_1_1iterator__facade__base.html#a668b849a4f26755eae386315d5ea363c">operator++</a>(<span class="keywordtype">int</span>)</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; {</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; DerivedT tmp = *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; ++*<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#aa8fb990c1847fec73bcbcaab5517ee11"> 146</a></span>&#160; DerivedT &amp;<a class="code" href="classllvm_1_1iterator__facade__base.html#aa8fb990c1847fec73bcbcaab5517ee11">operator--</a>()</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; {</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; static_assert(</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4e1f229fa73b6b5c2f25734ab347c51f">IsBidirectional</a>,</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="stringliteral">&quot;The decrement operator is only defined for bidirectional iterators.&quot;</span>);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>-=(1);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a2fe5a54c4c470c05190130854c0baca3"> 153</a></span>&#160; DerivedT <a class="code" href="classllvm_1_1iterator__facade__base.html#a2fe5a54c4c470c05190130854c0baca3">operator--</a>(<span class="keywordtype">int</span>)</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; {</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; static_assert(</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4e1f229fa73b6b5c2f25734ab347c51f">IsBidirectional</a>,</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="stringliteral">&quot;The decrement operator is only defined for bidirectional iterators.&quot;</span>);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; DerivedT tmp = *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; --*<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="preprocessor">#ifndef __cpp_impl_three_way_comparison</span></div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a8177352435657f182290be3d5c345cfc"> 164</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classllvm_1_1iterator__facade__base.html#a8177352435657f182290be3d5c345cfc">operator!=</a>(<span class="keyword">const</span> DerivedT &amp;RHS)<span class="keyword"> const</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> !(<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT &amp;<span class="keyword">&gt;</span>(*this) == RHS);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a9677d8ef8998cc763948bfdfc2f73c6e"> 170</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classllvm_1_1iterator__facade__base.html#a9677d8ef8998cc763948bfdfc2f73c6e">operator&gt;</a>(<span class="keyword">const</span> DerivedT &amp;RHS)<span class="keyword"> const</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; static_assert(</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56">IsRandomAccess</a>,</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="stringliteral">&quot;Relational operators are only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">return</span> !(<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT &amp;<span class="keyword">&gt;</span>(*this) &lt; RHS) &amp;&amp;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; !(static_cast&lt;const DerivedT &amp;&gt;(*<span class="keyword">this</span>) == RHS);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div><div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a11ebcbea3c495045f2bef3d4a0b92e61"> 178</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classllvm_1_1iterator__facade__base.html#a11ebcbea3c495045f2bef3d4a0b92e61">operator&lt;=</a>(<span class="keyword">const</span> DerivedT &amp;RHS)<span class="keyword"> const</span></div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; static_assert(</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56">IsRandomAccess</a>,</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="stringliteral">&quot;Relational operators are only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> !(<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT &amp;<span class="keyword">&gt;</span>(*this) &gt; RHS);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a2eaf8d2f2898a998c33dbc9d581844e3"> 185</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classllvm_1_1iterator__facade__base.html#a2eaf8d2f2898a998c33dbc9d581844e3">operator&gt;=</a>(<span class="keyword">const</span> DerivedT &amp;RHS)<span class="keyword"> const</span></div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; static_assert(</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56">IsRandomAccess</a>,</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="stringliteral">&quot;Relational operators are only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">return</span> !(<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT &amp;<span class="keyword">&gt;</span>(*this) &lt; RHS);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#ae99ad011019c5d09c5923dd020404e40"> 193</a></span>&#160; PointerT <a class="code" href="classllvm_1_1iterator__facade__base.html#ae99ad011019c5d09c5923dd020404e40">operator-&gt;</a>()</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; {</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">return</span> &amp;<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>*();</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; }</div><div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#a1a6b6c67bf160e7e63b724ec72624ab2"> 197</a></span>&#160; PointerT <a class="code" href="classllvm_1_1iterator__facade__base.html#a1a6b6c67bf160e7e63b724ec72624ab2">operator-&gt;</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">return</span> &amp;<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>*();</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; }</div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#affbe77f645dbac4bfd17d00b6ba769a0"> 201</a></span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ab871b88a7116b9aa362a92bd47ddd776">ReferenceProxy</a> <a class="code" href="classllvm_1_1iterator__facade__base.html#affbe77f645dbac4bfd17d00b6ba769a0">operator[]</a>(DifferenceTypeT <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; {</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; static_assert(<a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56">IsRandomAccess</a>,</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="stringliteral">&quot;Subscripting is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ab871b88a7116b9aa362a92bd47ddd776">ReferenceProxy</a>(static_cast&lt;DerivedT *&gt;(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>+(n));</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__facade__base.html#aef121b79d4aa4b0da5c1c8e9ae45f711"> 207</a></span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ab871b88a7116b9aa362a92bd47ddd776">ReferenceProxy</a> <a class="code" href="classllvm_1_1iterator__facade__base.html#aef121b79d4aa4b0da5c1c8e9ae45f711">operator[]</a>(DifferenceTypeT <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)<span class="keyword"> const</span></div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; static_assert(<a class="code" href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56">IsRandomAccess</a>,</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="stringliteral">&quot;Subscripting is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ab871b88a7116b9aa362a92bd47ddd776">ReferenceProxy</a>(static_cast&lt;const DerivedT *&gt;(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>+(n));</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; }</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;};</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="keyword">template</span> &lt;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keyword">typename</span> DerivedT, <span class="keyword">typename</span> WrappedIteratorT,</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keyword">typename</span> IteratorCategoryT =</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keyword">typename</span> std::iterator_traits&lt;WrappedIteratorT&gt;::iterator_category,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keyword">typename</span> T = <span class="keyword">typename</span> std::iterator_traits&lt;WrappedIteratorT&gt;::value_type,</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keyword">typename</span> DifferenceTypeT =</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keyword">typename</span> std::iterator_traits&lt;WrappedIteratorT&gt;::difference_type,</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keyword">typename</span> PointerT = std::conditional_t&lt;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; std::is_same&lt;T, <span class="keyword">typename</span> std::iterator_traits&lt;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; WrappedIteratorT&gt;<a class="code" href="classllvm_1_1iterator__facade__base.html#a36fb299f78c975d65ffcef4baa31b7f6">::value_type</a>&gt;::value,</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keyword">typename</span> std::iterator_traits&lt;WrappedIteratorT&gt;::pointer, T *&gt;,</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keyword">typename</span> ReferenceT = std::conditional_t&lt;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; std::is_same&lt;T, <span class="keyword">typename</span> std::iterator_traits&lt;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; WrappedIteratorT&gt;<a class="code" href="classllvm_1_1iterator__facade__base.html#a36fb299f78c975d65ffcef4baa31b7f6">::value_type</a>&gt;::value,</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keyword">typename</span> std::iterator_traits&lt;WrappedIteratorT&gt;::reference, T &amp;&gt;&gt;</div><div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html"> 235</a></span>&#160;<span class="keyword">class </span><a class="code" href="classllvm_1_1iterator__adaptor__base.html">iterator_adaptor_base</a></div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; : <span class="keyword">public</span> <a class="code" href="classllvm_1_1iterator__facade__base.html">iterator_facade_base</a>&lt;DerivedT, IteratorCategoryT, T,</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; DifferenceTypeT, PointerT, ReferenceT&gt;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;{</div><div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#ac1f22569ffff340b8f178b93513bc0eb"> 239</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classllvm_1_1iterator__adaptor__base.html#ac1f22569ffff340b8f178b93513bc0eb">BaseT</a> = <span class="keyword">typename</span> iterator_adaptor_base::iterator_facade_base;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="keyword">protected</span>:</div><div class="line"><a name="l00242"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#a563ec95255977c34566292cbdce193b3"> 242</a></span>&#160; WrappedIteratorT <a class="code" href="classllvm_1_1iterator__adaptor__base.html#a563ec95255977c34566292cbdce193b3">I</a>;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="classllvm_1_1iterator__adaptor__base.html">iterator_adaptor_base</a>() = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#a0815f647af9e50dd6cd1602e1e262705"> 246</a></span>&#160; <span class="keyword">explicit</span> <a class="code" href="classllvm_1_1iterator__adaptor__base.html#a0815f647af9e50dd6cd1602e1e262705">iterator_adaptor_base</a>(WrappedIteratorT u) : I(<a class="code" href="namespacestd.html">std</a>::<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">move</a>(u))</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; {</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; static_assert(std::is_base_of&lt;iterator_adaptor_base, DerivedT&gt;::value,</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="stringliteral">&quot;Must pass the derived type to this template!&quot;</span>);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; }</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#a780f0b7d17722cfe06d228fea3c060f7"> 252</a></span>&#160; <span class="keyword">const</span> WrappedIteratorT &amp;<a class="code" href="classllvm_1_1iterator__adaptor__base.html#a780f0b7d17722cfe06d228fea3c060f7">wrapped</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2">I</a>;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; }</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#afddc7f6db019bdab6daa810e83d78de3"> 258</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classllvm_1_1iterator__facade__base.html#a7e07dfa56b74ed115bdddd442e8184e6">difference_type</a> = DifferenceTypeT;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;</div><div class="line"><a name="l00260"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#a9e6d0dbf9e60bafcd26c82f901898315"> 260</a></span>&#160; DerivedT &amp;<a class="code" href="classllvm_1_1iterator__adaptor__base.html#a9e6d0dbf9e60bafcd26c82f901898315">operator+=</a>(<a class="code" href="classllvm_1_1iterator__facade__base.html#a7e07dfa56b74ed115bdddd442e8184e6">difference_type</a> <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; {</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; static_assert(</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; BaseT::IsRandomAccess,</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="stringliteral">&quot;The &#39;+=&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; I += <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }</div><div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#abf1116bfe125f6672bd752c1a1af1f6d"> 268</a></span>&#160; DerivedT &amp;<a class="code" href="classllvm_1_1iterator__adaptor__base.html#abf1116bfe125f6672bd752c1a1af1f6d">operator-=</a>(<a class="code" href="classllvm_1_1iterator__facade__base.html#a7e07dfa56b74ed115bdddd442e8184e6">difference_type</a> <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; {</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; static_assert(</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; BaseT::IsRandomAccess,</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="stringliteral">&quot;The &#39;-=&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; I -= <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; }</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keyword">using</span> BaseT::operator-;</div><div class="line"><a name="l00277"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#a86b76a04e3b7abc4a27ca714cea0afee"> 277</a></span>&#160; <a class="code" href="classllvm_1_1iterator__facade__base.html#a7e07dfa56b74ed115bdddd442e8184e6">difference_type</a> <a class="code" href="classllvm_1_1iterator__adaptor__base.html#a86b76a04e3b7abc4a27ca714cea0afee">operator-</a>(<span class="keyword">const</span> DerivedT &amp;RHS)<span class="keyword"> const</span></div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; static_assert(</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; BaseT::IsRandomAccess,</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="stringliteral">&quot;The &#39;-&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">return</span> I - RHS.I;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="comment">// We have to explicitly provide ++ and -- rather than letting the facade</span></div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="comment">// forward to += because WrappedIteratorT might not support +=.</span></div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keyword">using</span> BaseT::operator++;</div><div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#a395dc6bf1e4e4f1ee18354a9a2203259"> 288</a></span>&#160; DerivedT &amp;<a class="code" href="classllvm_1_1iterator__adaptor__base.html#a395dc6bf1e4e4f1ee18354a9a2203259">operator++</a>()</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; {</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; ++<a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2">I</a>;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keyword">using</span> BaseT::operator--;</div><div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#a924ad86f571d53385616b5663a1cf077"> 294</a></span>&#160; DerivedT &amp;<a class="code" href="classllvm_1_1iterator__adaptor__base.html#a924ad86f571d53385616b5663a1cf077">operator--</a>()</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; {</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; static_assert(</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; BaseT::IsBidirectional,</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="stringliteral">&quot;The decrement operator is only defined for bidirectional iterators.&quot;</span>);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; --<a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2">I</a>;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; }</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#ad3fbc9a33f20835bf81e343d85ce3aaa"> 303</a></span>&#160; <span class="keyword">friend</span> <span class="keywordtype">bool</span> <a class="code" href="classllvm_1_1iterator__adaptor__base.html#ad3fbc9a33f20835bf81e343d85ce3aaa">operator==</a>(<span class="keyword">const</span> <a class="code" href="classllvm_1_1iterator__adaptor__base.html">iterator_adaptor_base</a> &amp;LHS,</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keyword">const</span> <a class="code" href="classllvm_1_1iterator__adaptor__base.html">iterator_adaptor_base</a> &amp;RHS)</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">return</span> LHS.<a class="code" href="classllvm_1_1iterator__adaptor__base.html#a563ec95255977c34566292cbdce193b3">I</a> == RHS.<a class="code" href="classllvm_1_1iterator__adaptor__base.html#a563ec95255977c34566292cbdce193b3">I</a>;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#a9f74fe2ddfed7feb928edc871cb213f6"> 308</a></span>&#160; <span class="keyword">friend</span> <span class="keywordtype">bool</span> <a class="code" href="classllvm_1_1iterator__adaptor__base.html#a9f74fe2ddfed7feb928edc871cb213f6">operator&lt;</a>(<span class="keyword">const</span> <a class="code" href="classllvm_1_1iterator__adaptor__base.html">iterator_adaptor_base</a> &amp;LHS,</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keyword">const</span> <a class="code" href="classllvm_1_1iterator__adaptor__base.html">iterator_adaptor_base</a> &amp;RHS)</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; {</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; static_assert(</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; BaseT::IsRandomAccess,</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="stringliteral">&quot;Relational operators are only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">return</span> LHS.<a class="code" href="classllvm_1_1iterator__adaptor__base.html#a563ec95255977c34566292cbdce193b3">I</a> &lt; RHS.<a class="code" href="classllvm_1_1iterator__adaptor__base.html#a563ec95255977c34566292cbdce193b3">I</a>;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; }</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno"><a class="line" href="classllvm_1_1iterator__adaptor__base.html#ae47be6b8b03bf4680ea855ac805373a2"> 317</a></span>&#160; ReferenceT <a class="code" href="classllvm_1_1iterator__adaptor__base.html#ae47be6b8b03bf4680ea855ac805373a2">operator*</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">return</span> *<a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2">I</a>;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; }</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;};</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> WrappedIteratorT,</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keyword">typename</span> T = std::remove_reference_t&lt;decltype(</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; **std::declval&lt;WrappedIteratorT&gt;())&gt;&gt;</div><div class="line"><a name="l00335"></a><span class="lineno"><a class="line" href="structllvm_1_1pointee__iterator.html"> 335</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structllvm_1_1pointee__iterator.html">pointee_iterator</a></div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; : <a class="code" href="classllvm_1_1iterator__adaptor__base.html">iterator_adaptor_base</a>&lt;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; pointee_iterator&lt;WrappedIteratorT, T&gt;, WrappedIteratorT,</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; typename std::iterator_traits&lt;WrappedIteratorT&gt;::iterator_category,</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; T&gt;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;{</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <a class="code" href="structllvm_1_1pointee__iterator.html">pointee_iterator</a>() = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> U&gt;</div><div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="structllvm_1_1pointee__iterator.html#a59bc770f1247d7ba2273481b962cae62"> 343</a></span>&#160; <a class="code" href="structllvm_1_1pointee__iterator.html#a59bc770f1247d7ba2273481b962cae62">pointee_iterator</a>(U &amp;&amp;u)</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; : <a class="code" href="structllvm_1_1pointee__iterator.html">pointee_iterator</a>::<a class="code" href="classllvm_1_1iterator__adaptor__base.html">iterator_adaptor_base</a>(<a class="code" href="namespacestd.html">std</a>::forward&lt;U &amp;&amp;&gt;(u)) {}</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;</div><div class="line"><a name="l00346"></a><span class="lineno"><a class="line" href="structllvm_1_1pointee__iterator.html#a36ef3dae4b2e8b955d19f02b520c80aa"> 346</a></span>&#160; T &amp;<a class="code" href="structllvm_1_1pointee__iterator.html#a36ef3dae4b2e8b955d19f02b520c80aa">operator*</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">return</span> **this-&gt;<a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2">I</a>;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; }</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;};</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> RangeT, <span class="keyword">typename</span> WrappedIteratorT =</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; decltype(std::begin(std::declval&lt;RangeT&gt;()))&gt;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;<a class="code" href="classllvm_1_1iterator__range.html">iterator_range&lt;pointee_iterator&lt;WrappedIteratorT&gt;</a>&gt;</div><div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="namespacellvm.html#aec01581c3275a7fab5a18b88a02c96b7"> 355</a></span>&#160; <a class="code" href="namespacellvm.html#aec01581c3275a7fab5a18b88a02c96b7">make_pointee_range</a>(RangeT &amp;&amp;Range)</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;{</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keyword">using</span> PointeeIteratorT = <a class="code" href="structllvm_1_1pointee__iterator.html">pointee_iterator&lt;WrappedIteratorT&gt;</a>;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacellvm.html#ad1a91b49e0c092818a0b82f6cc130a1b">make_range</a>(PointeeIteratorT(std::begin(std::forward&lt;RangeT&gt;(Range))),</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; PointeeIteratorT(std::end(std::forward&lt;RangeT&gt;(Range))));</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;}</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> WrappedIteratorT,</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keyword">typename</span> T = decltype(&amp;*std::declval&lt;WrappedIteratorT&gt;())&gt;</div><div class="line"><a name="l00364"></a><span class="lineno"><a class="line" href="classllvm_1_1pointer__iterator.html"> 364</a></span>&#160;<span class="keyword">class </span><a class="code" href="classllvm_1_1pointer__iterator.html">pointer_iterator</a></div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; : <span class="keyword">public</span> <a class="code" href="classllvm_1_1iterator__adaptor__base.html">iterator_adaptor_base</a>&lt;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; pointer_iterator&lt;WrappedIteratorT, T&gt;, WrappedIteratorT,</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; typename std::iterator_traits&lt;WrappedIteratorT&gt;::iterator_category,</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; T&gt;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;{</div><div class="line"><a name="l00370"></a><span class="lineno"><a class="line" href="classllvm_1_1pointer__iterator.html#ac6288459e1f350103a2cd26d20ce0df7"> 370</a></span>&#160; <span class="keyword">mutable</span> T <a class="code" href="classllvm_1_1pointer__iterator.html#ac6288459e1f350103a2cd26d20ce0df7">Ptr</a>;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <a class="code" href="classllvm_1_1pointer__iterator.html">pointer_iterator</a>() = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;</div><div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="classllvm_1_1pointer__iterator.html#a738f3d6c147e1670a42d66c960bed2fc"> 375</a></span>&#160; <span class="keyword">explicit</span> <a class="code" href="classllvm_1_1pointer__iterator.html#a738f3d6c147e1670a42d66c960bed2fc">pointer_iterator</a>(WrappedIteratorT u)</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; : <a class="code" href="classllvm_1_1pointer__iterator.html">pointer_iterator</a>::<a class="code" href="classllvm_1_1iterator__adaptor__base.html">iterator_adaptor_base</a>(<a class="code" href="namespacestd.html">std</a>::<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">move</a>(u)) {}</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;</div><div class="line"><a name="l00378"></a><span class="lineno"><a class="line" href="classllvm_1_1pointer__iterator.html#a60bd26b721875ebe0e82e68ddde20f16"> 378</a></span>&#160; T &amp;<a class="code" href="classllvm_1_1pointer__iterator.html#a60bd26b721875ebe0e82e68ddde20f16">operator*</a>()</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; {</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">return</span> Ptr = &amp;*this-&gt;<a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2">I</a>;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; }</div><div class="line"><a name="l00382"></a><span class="lineno"><a class="line" href="classllvm_1_1pointer__iterator.html#a5623e1644b102203f3bbf4533c74abaa"> 382</a></span>&#160; <span class="keyword">const</span> T &amp;<a class="code" href="classllvm_1_1pointer__iterator.html#a5623e1644b102203f3bbf4533c74abaa">operator*</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> Ptr = &amp;*this-&gt;<a class="code" href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2">I</a>;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; }</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;};</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> RangeT, <span class="keyword">typename</span> WrappedIteratorT =</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; decltype(std::begin(std::declval&lt;RangeT&gt;()))&gt;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;<a class="code" href="classllvm_1_1iterator__range.html">iterator_range&lt;pointer_iterator&lt;WrappedIteratorT&gt;</a>&gt;</div><div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="namespacellvm.html#af8941b8ce2fe4581623e4962b287cc5c"> 391</a></span>&#160; <a class="code" href="namespacellvm.html#af8941b8ce2fe4581623e4962b287cc5c">make_pointer_range</a>(RangeT &amp;&amp;Range)</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;{</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keyword">using</span> PointerIteratorT = <a class="code" href="classllvm_1_1pointer__iterator.html">pointer_iterator&lt;WrappedIteratorT&gt;</a>;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacellvm.html#ad1a91b49e0c092818a0b82f6cc130a1b">make_range</a>(PointerIteratorT(std::begin(std::forward&lt;RangeT&gt;(Range))),</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; PointerIteratorT(std::end(std::forward&lt;RangeT&gt;(Range))));</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;}</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> WrappedIteratorT,</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keyword">typename</span> T1 = std::remove_reference_t&lt;decltype(</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; **std::declval&lt;WrappedIteratorT&gt;())&gt;,</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keyword">typename</span> T2 = std::add_pointer_t&lt;T1&gt;&gt;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;<span class="keyword">using</span> <a class="code" href="classllvm_1_1pointer__iterator.html">raw_pointer_iterator</a> =</div><div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="namespacellvm.html#aca4a1c40c795d723338628e5e405757c"> 403</a></span>&#160; <a class="code" href="classllvm_1_1pointer__iterator.html">pointer_iterator&lt;pointee_iterator&lt;WrappedIteratorT, T1&gt;</a>, T2&gt;;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;} <span class="comment">// end namespace llvm</span></div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;<span class="preprocessor">#endif // LLVM_ADT_ITERATOR_H</span></div><div class="ttc" id="classllvm_1_1iterator__facade__base_html_a491d3989cc90d99cdb1f123d141b87cb"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a491d3989cc90d99cdb1f123d141b87cb">llvm::iterator_facade_base::operator-</a></div><div class="ttdeci">DerivedT operator-(DifferenceTypeT n) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00124">iterator.h:124</a></div></div>
70
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_ae2d9deb2dce97bf6cf45faf988c30a3b"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#ae2d9deb2dce97bf6cf45faf988c30a3b">llvm::iterator_facade_base&lt; pointer_iterator&lt; WrappedIteratorT, T &gt;, std::iterator_traits&lt; WrappedIteratorT &gt;::iterator_category, T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::difference_type, std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::pointer, T * &gt;, std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::reference, T &amp; &gt; &gt;::pointer</a></div><div class="ttdeci">std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::pointer, T *&gt; pointer</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00073">iterator.h:73</a></div></div>
71
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4f2910ff91c3e559958a66f09bfefe56">llvm::iterator_facade_base::IsRandomAccess</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00079">iterator.h:79</a></div></div>
72
- <div class="ttc" id="namespacellvm_html"><div class="ttname"><a href="namespacellvm.html">llvm</a></div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#l00192">CFLGraph.h:192</a></div></div>
73
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a8177352435657f182290be3d5c345cfc"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a8177352435657f182290be3d5c345cfc">llvm::iterator_facade_base::operator!=</a></div><div class="ttdeci">bool operator!=(const DerivedT &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00164">iterator.h:164</a></div></div>
74
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_ae47be6b8b03bf4680ea855ac805373a2"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#ae47be6b8b03bf4680ea855ac805373a2">llvm::iterator_adaptor_base::operator*</a></div><div class="ttdeci">ReferenceT operator*() const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00317">iterator.h:317</a></div></div>
75
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a2eaf8d2f2898a998c33dbc9d581844e3"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a2eaf8d2f2898a998c33dbc9d581844e3">llvm::iterator_facade_base::operator&gt;=</a></div><div class="ttdeci">bool operator&gt;=(const DerivedT &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00185">iterator.h:185</a></div></div>
69
+ <a href="iterator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">//===- iterator.h - Utilities for using and defining iterators --*- C++ -*-===//</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">// See https://llvm.org/LICENSE.txt for license information.</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment">// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment">//===----------------------------------------------------------------------===//</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#ifndef UTIL_ITERATOR_H</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#define UTIL_ITERATOR_H</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="iterator__range_8h.html">Util/iterator_range.h</a>&quot;</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#include &lt;iterator&gt;</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="preprocessor">#include &lt;type_traits&gt;</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="preprocessor">#include &lt;utility&gt;</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;{</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> DerivedT, <span class="keyword">typename</span> IteratorCategoryT, <span class="keyword">typename</span> T,</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keyword">typename</span> DifferenceTypeT = std::ptrdiff_t, <span class="keyword">typename</span> PointerT = T *,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">typename</span> ReferenceT = T &amp;&gt;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html"> 67</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1iter__facade__base.html">iter_facade_base</a></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;{</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a040de7bda3801ef9c8ba28de1209e0e6"> 70</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1iter__facade__base.html#a040de7bda3801ef9c8ba28de1209e0e6">iterator_category</a> = IteratorCategoryT;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a8d2e47a4de7b98466255b4846bdde26c"> 71</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1iter__facade__base.html#a8d2e47a4de7b98466255b4846bdde26c">value_type</a> = T;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a4850340b864a13fb78e52dfb46d0e8a3"> 72</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1iter__facade__base.html#a4850340b864a13fb78e52dfb46d0e8a3">difference_type</a> = DifferenceTypeT;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a7883aae06037a1b966e33cced95da49b"> 73</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1iter__facade__base.html#a7883aae06037a1b966e33cced95da49b">pointer</a> = PointerT;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a3d501177aef770b02e7d2629b334e32a"> 74</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1iter__facade__base.html#a3d501177aef770b02e7d2629b334e32a">reference</a> = ReferenceT;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keyword">protected</span>:</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">enum</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; {</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8"> 79</a></span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8">IsRandomAccess</a> = std::is_base_of&lt;std::random_access_iterator_tag,</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; IteratorCategoryT&gt;::value,</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a0552120a5aa8ae40a219b52934ad3409"> 81</a></span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a0552120a5aa8ae40a219b52934ad3409">IsBidirectional</a> = std::is_base_of&lt;std::bidirectional_iterator_tag,</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; IteratorCategoryT&gt;::value,</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; };</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html"> 90</a></span>&#160; <span class="keyword">class </span><a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html">ReferenceProxy</a></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; {</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#ab4717ea89d08ac05464fa95bc7f50ac6"> 92</a></span>&#160; <span class="keyword">friend</span> <a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#ab4717ea89d08ac05464fa95bc7f50ac6">iter_facade_base</a>;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3"> 94</a></span>&#160; DerivedT <a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3">I</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aabce5b9a8700ecf1415a92ce45b384a2"> 96</a></span>&#160; <a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aabce5b9a8700ecf1415a92ce45b384a2">ReferenceProxy</a>(DerivedT I) : I(<a class="code" href="namespacestd.html">std</a>::<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">move</a>(I)) {}</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#a6889cc9eba9892a3fc372f5353bc4dc6"> 99</a></span>&#160; <span class="keyword">operator</span> ReferenceT()<span class="keyword"> const</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> *<a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3">I</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; };</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#aa9d4c4b13e555b7979672c20d9a40a24"> 106</a></span>&#160; DerivedT <a class="code" href="classSVF_1_1iter__facade__base.html#aa9d4c4b13e555b7979672c20d9a40a24">operator+</a>(DifferenceTypeT <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)<span class="keyword"> const</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; static_assert(std::is_base_of&lt;iter_facade_base, DerivedT&gt;::value,</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="stringliteral">&quot;Must pass the derived type to this template!&quot;</span>);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; static_assert(</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8">IsRandomAccess</a>,</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="stringliteral">&quot;The &#39;+&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; DerivedT tmp = *<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; tmp += <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a56831a09ff0a972cfb02376aaab2caab"> 117</a></span>&#160; <span class="keyword">friend</span> DerivedT <a class="code" href="classSVF_1_1iter__facade__base.html#a56831a09ff0a972cfb02376aaab2caab">operator+</a>(DifferenceTypeT <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>, <span class="keyword">const</span> DerivedT &amp;i)</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; static_assert(</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8">IsRandomAccess</a>,</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="stringliteral">&quot;The &#39;+&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> i + <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#af12e184fc89401f62c079181ff981475"> 124</a></span>&#160; DerivedT <a class="code" href="classSVF_1_1iter__facade__base.html#af12e184fc89401f62c079181ff981475">operator-</a>(DifferenceTypeT <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)<span class="keyword"> const</span></div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; static_assert(</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8">IsRandomAccess</a>,</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="stringliteral">&quot;The &#39;-&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; DerivedT tmp = *<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; tmp -= <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#aabe92262cb9990f3c7d92bf2e9997417"> 134</a></span>&#160; DerivedT &amp;<a class="code" href="classSVF_1_1iter__facade__base.html#aabe92262cb9990f3c7d92bf2e9997417">operator++</a>()</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; static_assert(std::is_base_of&lt;iter_facade_base, DerivedT&gt;::value,</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="stringliteral">&quot;Must pass the derived type to this template!&quot;</span>);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>+=(1);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; }</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a0f03c8e373df19aa195f9aed2d95792b"> 140</a></span>&#160; DerivedT <a class="code" href="classSVF_1_1iter__facade__base.html#a0f03c8e373df19aa195f9aed2d95792b">operator++</a>(<span class="keywordtype">int</span>)</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; {</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; DerivedT tmp = *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; ++*<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#affa36a9a632684c92c334b52f764626d"> 146</a></span>&#160; DerivedT &amp;<a class="code" href="classSVF_1_1iter__facade__base.html#affa36a9a632684c92c334b52f764626d">operator--</a>()</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; {</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; static_assert(</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a0552120a5aa8ae40a219b52934ad3409">IsBidirectional</a>,</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="stringliteral">&quot;The decrement operator is only defined for bidirectional iterators.&quot;</span>);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>-=(1);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#aa23818fb642768d76bf3955bcaf29ab4"> 153</a></span>&#160; DerivedT <a class="code" href="classSVF_1_1iter__facade__base.html#aa23818fb642768d76bf3955bcaf29ab4">operator--</a>(<span class="keywordtype">int</span>)</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; {</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; static_assert(</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a0552120a5aa8ae40a219b52934ad3409">IsBidirectional</a>,</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="stringliteral">&quot;The decrement operator is only defined for bidirectional iterators.&quot;</span>);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; DerivedT tmp = *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; --*<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="preprocessor">#ifndef __cpp_impl_three_way_comparison</span></div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a84d45b0f8c02a1c892d5e7f5104696ed"> 164</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1iter__facade__base.html#a84d45b0f8c02a1c892d5e7f5104696ed">operator!=</a>(<span class="keyword">const</span> DerivedT &amp;RHS)<span class="keyword"> const</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> !(<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT &amp;<span class="keyword">&gt;</span>(*this) == RHS);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a5358c586434e85a8d0989b7d319def2f"> 170</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1iter__facade__base.html#a5358c586434e85a8d0989b7d319def2f">operator&gt;</a>(<span class="keyword">const</span> DerivedT &amp;RHS)<span class="keyword"> const</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; static_assert(</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8">IsRandomAccess</a>,</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="stringliteral">&quot;Relational operators are only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">return</span> !(<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT &amp;<span class="keyword">&gt;</span>(*this) &lt; RHS) &amp;&amp;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; !(static_cast&lt;const DerivedT &amp;&gt;(*<span class="keyword">this</span>) == RHS);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div><div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#adee425f22948da744f8aa100719c83cf"> 178</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1iter__facade__base.html#adee425f22948da744f8aa100719c83cf">operator&lt;=</a>(<span class="keyword">const</span> DerivedT &amp;RHS)<span class="keyword"> const</span></div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; static_assert(</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8">IsRandomAccess</a>,</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="stringliteral">&quot;Relational operators are only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> !(<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT &amp;<span class="keyword">&gt;</span>(*this) &gt; RHS);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#ab5d48611f6ef4aac65614576ab17b2e6"> 185</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1iter__facade__base.html#ab5d48611f6ef4aac65614576ab17b2e6">operator&gt;=</a>(<span class="keyword">const</span> DerivedT &amp;RHS)<span class="keyword"> const</span></div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; static_assert(</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8">IsRandomAccess</a>,</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="stringliteral">&quot;Relational operators are only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">return</span> !(<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT &amp;<span class="keyword">&gt;</span>(*this) &lt; RHS);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a7a44b9bf5f2a7c367baad3a3066c2b6b"> 193</a></span>&#160; PointerT <a class="code" href="classSVF_1_1iter__facade__base.html#a7a44b9bf5f2a7c367baad3a3066c2b6b">operator-&gt;</a>()</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; {</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">return</span> &amp;<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>*();</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; }</div><div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#aa637a57840b1741e909c89946294fdd9"> 197</a></span>&#160; PointerT <a class="code" href="classSVF_1_1iter__facade__base.html#aa637a57840b1741e909c89946294fdd9">operator-&gt;</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">return</span> &amp;<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>*();</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; }</div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#a0ebfb2b2165a04b53d6813badb14dc25"> 201</a></span>&#160; <a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aabce5b9a8700ecf1415a92ce45b384a2">ReferenceProxy</a> <a class="code" href="classSVF_1_1iter__facade__base.html#a0ebfb2b2165a04b53d6813badb14dc25">operator[]</a>(DifferenceTypeT <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; {</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; static_assert(<a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8">IsRandomAccess</a>,</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="stringliteral">&quot;Subscripting is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aabce5b9a8700ecf1415a92ce45b384a2">ReferenceProxy</a>(static_cast&lt;DerivedT *&gt;(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>+(n));</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__facade__base.html#aaf17d10058d2e8983e4e7d1559966b80"> 207</a></span>&#160; <a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aabce5b9a8700ecf1415a92ce45b384a2">ReferenceProxy</a> <a class="code" href="classSVF_1_1iter__facade__base.html#aaf17d10058d2e8983e4e7d1559966b80">operator[]</a>(DifferenceTypeT <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)<span class="keyword"> const</span></div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; static_assert(<a class="code" href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8">IsRandomAccess</a>,</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="stringliteral">&quot;Subscripting is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aabce5b9a8700ecf1415a92ce45b384a2">ReferenceProxy</a>(static_cast&lt;const DerivedT *&gt;(<span class="keyword">this</span>)-&gt;<span class="keyword">operator</span>+(n));</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; }</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;};</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="keyword">template</span> &lt;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keyword">typename</span> DerivedT, <span class="keyword">typename</span> WrappedIteratorT,</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keyword">typename</span> IteratorCategoryT =</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keyword">typename</span> std::iterator_traits&lt;WrappedIteratorT&gt;::iterator_category,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keyword">typename</span> T = <span class="keyword">typename</span> std::iterator_traits&lt;WrappedIteratorT&gt;::value_type,</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keyword">typename</span> DifferenceTypeT =</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keyword">typename</span> std::iterator_traits&lt;WrappedIteratorT&gt;::difference_type,</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keyword">typename</span> PointerT = std::conditional_t&lt;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; std::is_same&lt;T, <span class="keyword">typename</span> std::iterator_traits&lt;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; WrappedIteratorT&gt;<a class="code" href="classSVF_1_1iter__facade__base.html#a8d2e47a4de7b98466255b4846bdde26c">::value_type</a>&gt;::value,</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keyword">typename</span> std::iterator_traits&lt;WrappedIteratorT&gt;::pointer, T *&gt;,</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keyword">typename</span> ReferenceT = std::conditional_t&lt;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; std::is_same&lt;T, <span class="keyword">typename</span> std::iterator_traits&lt;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; WrappedIteratorT&gt;<a class="code" href="classSVF_1_1iter__facade__base.html#a8d2e47a4de7b98466255b4846bdde26c">::value_type</a>&gt;::value,</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keyword">typename</span> std::iterator_traits&lt;WrappedIteratorT&gt;::reference, T &amp;&gt;&gt;</div><div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html"> 235</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1iter__adaptor__base.html">iter_adaptor_base</a></div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; : <span class="keyword">public</span> <a class="code" href="classSVF_1_1iter__facade__base.html">iter_facade_base</a>&lt;DerivedT, IteratorCategoryT, T,</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; DifferenceTypeT, PointerT, ReferenceT&gt;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;{</div><div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#afbad8b4d7822152aec9a206c0e293f96"> 239</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1iter__adaptor__base.html#afbad8b4d7822152aec9a206c0e293f96">BaseT</a> = <span class="keyword">typename</span> iter_adaptor_base::iter_facade_base;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="keyword">protected</span>:</div><div class="line"><a name="l00242"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#a1c80cc24530dbc29b03bf58500e0d636"> 242</a></span>&#160; WrappedIteratorT <a class="code" href="classSVF_1_1iter__adaptor__base.html#a1c80cc24530dbc29b03bf58500e0d636">I</a>;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="classSVF_1_1iter__adaptor__base.html">iter_adaptor_base</a>() = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#ad3e91fd59221ddbdc889bc081159f611"> 246</a></span>&#160; <span class="keyword">explicit</span> <a class="code" href="classSVF_1_1iter__adaptor__base.html#ad3e91fd59221ddbdc889bc081159f611">iter_adaptor_base</a>(WrappedIteratorT u) : I(<a class="code" href="namespacestd.html">std</a>::<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">move</a>(u))</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; {</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; static_assert(std::is_base_of&lt;iter_adaptor_base, DerivedT&gt;::value,</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="stringliteral">&quot;Must pass the derived type to this template!&quot;</span>);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; }</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#afa1dc067ea97ae5db1e2618e47be1525"> 252</a></span>&#160; <span class="keyword">const</span> WrappedIteratorT &amp;<a class="code" href="classSVF_1_1iter__adaptor__base.html#afa1dc067ea97ae5db1e2618e47be1525">wrapped</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3">I</a>;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; }</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#a0dc562917692ec5e4880509444b66e9a"> 258</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classSVF_1_1iter__facade__base.html#a4850340b864a13fb78e52dfb46d0e8a3">difference_type</a> = DifferenceTypeT;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;</div><div class="line"><a name="l00260"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#a086291a49b72cd4705eab444a356d340"> 260</a></span>&#160; DerivedT &amp;<a class="code" href="classSVF_1_1iter__adaptor__base.html#a086291a49b72cd4705eab444a356d340">operator+=</a>(<a class="code" href="classSVF_1_1iter__facade__base.html#a4850340b864a13fb78e52dfb46d0e8a3">difference_type</a> <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; {</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; static_assert(</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; BaseT::IsRandomAccess,</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="stringliteral">&quot;The &#39;+=&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; I += <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }</div><div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#a6e0780ec078108f693b34c8ecf10d710"> 268</a></span>&#160; DerivedT &amp;<a class="code" href="classSVF_1_1iter__adaptor__base.html#a6e0780ec078108f693b34c8ecf10d710">operator-=</a>(<a class="code" href="classSVF_1_1iter__facade__base.html#a4850340b864a13fb78e52dfb46d0e8a3">difference_type</a> <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>)</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; {</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; static_assert(</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; BaseT::IsRandomAccess,</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="stringliteral">&quot;The &#39;-=&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; I -= <a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; }</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keyword">using</span> BaseT::operator-;</div><div class="line"><a name="l00277"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#aa870b13f5304a62dfd9f5aa535df3e90"> 277</a></span>&#160; <a class="code" href="classSVF_1_1iter__facade__base.html#a4850340b864a13fb78e52dfb46d0e8a3">difference_type</a> <a class="code" href="classSVF_1_1iter__adaptor__base.html#aa870b13f5304a62dfd9f5aa535df3e90">operator-</a>(<span class="keyword">const</span> DerivedT &amp;RHS)<span class="keyword"> const</span></div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; static_assert(</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; BaseT::IsRandomAccess,</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="stringliteral">&quot;The &#39;-&#39; operator is only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">return</span> I - RHS.I;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="comment">// We have to explicitly provide ++ and -- rather than letting the facade</span></div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="comment">// forward to += because WrappedIteratorT might not support +=.</span></div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keyword">using</span> BaseT::operator++;</div><div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#aa7c90c34509467d719ee0d84fe19d764"> 288</a></span>&#160; DerivedT &amp;<a class="code" href="classSVF_1_1iter__adaptor__base.html#aa7c90c34509467d719ee0d84fe19d764">operator++</a>()</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; {</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; ++<a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3">I</a>;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keyword">using</span> BaseT::operator--;</div><div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#a1c035596091af80262b234384268e3bc"> 294</a></span>&#160; DerivedT &amp;<a class="code" href="classSVF_1_1iter__adaptor__base.html#a1c035596091af80262b234384268e3bc">operator--</a>()</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; {</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; static_assert(</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; BaseT::IsBidirectional,</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="stringliteral">&quot;The decrement operator is only defined for bidirectional iterators.&quot;</span>);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; --<a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3">I</a>;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">static_cast&lt;</span>DerivedT *<span class="keyword">&gt;</span>(<span class="keyword">this</span>);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; }</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#a0cfce21cb7aa24062dd921a9a5bace3a"> 303</a></span>&#160; <span class="keyword">friend</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1iter__adaptor__base.html#a0cfce21cb7aa24062dd921a9a5bace3a">operator==</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1iter__adaptor__base.html">iter_adaptor_base</a> &amp;LHS,</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1iter__adaptor__base.html">iter_adaptor_base</a> &amp;RHS)</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">return</span> LHS.<a class="code" href="classSVF_1_1iter__adaptor__base.html#a1c80cc24530dbc29b03bf58500e0d636">I</a> == RHS.<a class="code" href="classSVF_1_1iter__adaptor__base.html#a1c80cc24530dbc29b03bf58500e0d636">I</a>;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#a0a4477a210b9d5ce260ca3790cfe9779"> 308</a></span>&#160; <span class="keyword">friend</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1iter__adaptor__base.html#a0a4477a210b9d5ce260ca3790cfe9779">operator&lt;</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1iter__adaptor__base.html">iter_adaptor_base</a> &amp;LHS,</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1iter__adaptor__base.html">iter_adaptor_base</a> &amp;RHS)</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; {</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; static_assert(</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; BaseT::IsRandomAccess,</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="stringliteral">&quot;Relational operators are only defined for random access iterators.&quot;</span>);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">return</span> LHS.<a class="code" href="classSVF_1_1iter__adaptor__base.html#a1c80cc24530dbc29b03bf58500e0d636">I</a> &lt; RHS.<a class="code" href="classSVF_1_1iter__adaptor__base.html#a1c80cc24530dbc29b03bf58500e0d636">I</a>;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; }</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno"><a class="line" href="classSVF_1_1iter__adaptor__base.html#adcb4657aff726d8f7eb0dc3f1dd4ff47"> 317</a></span>&#160; ReferenceT <a class="code" href="classSVF_1_1iter__adaptor__base.html#adcb4657aff726d8f7eb0dc3f1dd4ff47">operator*</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">return</span> *<a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3">I</a>;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; }</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;};</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> WrappedIteratorT,</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keyword">typename</span> T = std::remove_reference_t&lt;decltype(</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; **std::declval&lt;WrappedIteratorT&gt;())&gt;&gt;</div><div class="line"><a name="l00335"></a><span class="lineno"><a class="line" href="structSVF_1_1pointee__iter.html"> 335</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structSVF_1_1pointee__iter.html">pointee_iter</a></div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; : <a class="code" href="classSVF_1_1iter__adaptor__base.html">iter_adaptor_base</a>&lt;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; pointee_iter&lt;WrappedIteratorT, T&gt;, WrappedIteratorT,</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; typename std::iterator_traits&lt;WrappedIteratorT&gt;::iterator_category,</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; T&gt;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;{</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <a class="code" href="structSVF_1_1pointee__iter.html">pointee_iter</a>() = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> U&gt;</div><div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="structSVF_1_1pointee__iter.html#a77dce78a5bd0330658dc75a38c3fc329"> 343</a></span>&#160; <a class="code" href="structSVF_1_1pointee__iter.html#a77dce78a5bd0330658dc75a38c3fc329">pointee_iter</a>(U &amp;&amp;u)</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; : <a class="code" href="structSVF_1_1pointee__iter.html">pointee_iter</a>::<a class="code" href="classSVF_1_1iter__adaptor__base.html">iter_adaptor_base</a>(<a class="code" href="namespacestd.html">std</a>::forward&lt;U &amp;&amp;&gt;(u)) {}</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;</div><div class="line"><a name="l00346"></a><span class="lineno"><a class="line" href="structSVF_1_1pointee__iter.html#a3e5e7a02b9af71f37213d12f4f18ceb4"> 346</a></span>&#160; T &amp;<a class="code" href="structSVF_1_1pointee__iter.html#a3e5e7a02b9af71f37213d12f4f18ceb4">operator*</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">return</span> **this-&gt;<a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3">I</a>;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; }</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;};</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> RangeT, <span class="keyword">typename</span> WrappedIteratorT =</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; decltype(std::begin(std::declval&lt;RangeT&gt;()))&gt;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;<a class="code" href="classSVF_1_1iter__range.html">iter_range&lt;pointee_iter&lt;WrappedIteratorT&gt;</a>&gt;</div><div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="namespaceSVF.html#a41ca7c140a3b61d946e8c6338102986e"> 355</a></span>&#160; <a class="code" href="namespaceSVF.html#a41ca7c140a3b61d946e8c6338102986e">make_pointee_range</a>(RangeT &amp;&amp;Range)</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;{</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keyword">using</span> PointeeIteratorT = <a class="code" href="structSVF_1_1pointee__iter.html">pointee_iter&lt;WrappedIteratorT&gt;</a>;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF.html#a3b6bc8132d0fd4902888ab9f77c20124">make_range</a>(PointeeIteratorT(std::begin(std::forward&lt;RangeT&gt;(Range))),</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; PointeeIteratorT(std::end(std::forward&lt;RangeT&gt;(Range))));</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;}</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> WrappedIteratorT,</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keyword">typename</span> T = decltype(&amp;*std::declval&lt;WrappedIteratorT&gt;())&gt;</div><div class="line"><a name="l00364"></a><span class="lineno"><a class="line" href="classSVF_1_1pointer__iterator.html"> 364</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1pointer__iterator.html">pointer_iterator</a></div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; : <span class="keyword">public</span> <a class="code" href="classSVF_1_1iter__adaptor__base.html">iter_adaptor_base</a>&lt;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; pointer_iterator&lt;WrappedIteratorT, T&gt;, WrappedIteratorT,</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; typename std::iterator_traits&lt;WrappedIteratorT&gt;::iterator_category,</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; T&gt;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;{</div><div class="line"><a name="l00370"></a><span class="lineno"><a class="line" href="classSVF_1_1pointer__iterator.html#a0dd739c7a521b7efe951bb9712ddcd14"> 370</a></span>&#160; <span class="keyword">mutable</span> T <a class="code" href="classSVF_1_1pointer__iterator.html#a0dd739c7a521b7efe951bb9712ddcd14">Ptr</a>;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <a class="code" href="classSVF_1_1pointer__iterator.html">pointer_iterator</a>() = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;</div><div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="classSVF_1_1pointer__iterator.html#a90b49a39706f22db66f33c5e527235e9"> 375</a></span>&#160; <span class="keyword">explicit</span> <a class="code" href="classSVF_1_1pointer__iterator.html#a90b49a39706f22db66f33c5e527235e9">pointer_iterator</a>(WrappedIteratorT u)</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; : <a class="code" href="classSVF_1_1pointer__iterator.html">pointer_iterator</a>::<a class="code" href="classSVF_1_1iter__adaptor__base.html">iter_adaptor_base</a>(<a class="code" href="namespacestd.html">std</a>::<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">move</a>(u)) {}</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;</div><div class="line"><a name="l00378"></a><span class="lineno"><a class="line" href="classSVF_1_1pointer__iterator.html#a12bae66eedebffd73730d091d99e3c9a"> 378</a></span>&#160; T &amp;<a class="code" href="classSVF_1_1pointer__iterator.html#a12bae66eedebffd73730d091d99e3c9a">operator*</a>()</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; {</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">return</span> Ptr = &amp;*this-&gt;<a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3">I</a>;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; }</div><div class="line"><a name="l00382"></a><span class="lineno"><a class="line" href="classSVF_1_1pointer__iterator.html#afe7d2b1087c56d028a58abbce9ce3b64"> 382</a></span>&#160; <span class="keyword">const</span> T &amp;<a class="code" href="classSVF_1_1pointer__iterator.html#afe7d2b1087c56d028a58abbce9ce3b64">operator*</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> Ptr = &amp;*this-&gt;<a class="code" href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3">I</a>;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; }</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;};</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> RangeT, <span class="keyword">typename</span> WrappedIteratorT =</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; decltype(std::begin(std::declval&lt;RangeT&gt;()))&gt;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;<a class="code" href="classSVF_1_1iter__range.html">iter_range&lt;pointer_iterator&lt;WrappedIteratorT&gt;</a>&gt;</div><div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="namespaceSVF.html#a7a436778318d16678992a3173988afc2"> 391</a></span>&#160; <a class="code" href="namespaceSVF.html#a7a436778318d16678992a3173988afc2">make_pointer_range</a>(RangeT &amp;&amp;Range)</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;{</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keyword">using</span> PointerIteratorT = <a class="code" href="classSVF_1_1pointer__iterator.html">pointer_iterator&lt;WrappedIteratorT&gt;</a>;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespaceSVF.html#a3b6bc8132d0fd4902888ab9f77c20124">make_range</a>(PointerIteratorT(std::begin(std::forward&lt;RangeT&gt;(Range))),</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; PointerIteratorT(std::end(std::forward&lt;RangeT&gt;(Range))));</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;}</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> WrappedIteratorT,</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keyword">typename</span> T1 = std::remove_reference_t&lt;decltype(</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; **std::declval&lt;WrappedIteratorT&gt;())&gt;,</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keyword">typename</span> T2 = std::add_pointer_t&lt;T1&gt;&gt;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;<span class="keyword">using</span> <a class="code" href="classSVF_1_1pointer__iterator.html">raw_pointer_iterator</a> =</div><div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="namespaceSVF.html#af3b0c055d852656a062bf784222a4fea"> 403</a></span>&#160; <a class="code" href="classSVF_1_1pointer__iterator.html">pointer_iterator&lt;pointee_iter&lt;WrappedIteratorT, T1&gt;</a>, T2&gt;;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;} <span class="comment">// end namespace llvm</span></div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;<span class="preprocessor">#endif // LLVM_ADT_ITERATOR_H</span></div><div class="ttc" id="classSVF_1_1iter__adaptor__base_html_a086291a49b72cd4705eab444a356d340"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#a086291a49b72cd4705eab444a356d340">SVF::iter_adaptor_base::operator+=</a></div><div class="ttdeci">DerivedT &amp; operator+=(difference_type n)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00260">iterator.h:260</a></div></div>
70
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_a0a4477a210b9d5ce260ca3790cfe9779"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#a0a4477a210b9d5ce260ca3790cfe9779">SVF::iter_adaptor_base::operator&lt;</a></div><div class="ttdeci">friend bool operator&lt;(const iter_adaptor_base &amp;LHS, const iter_adaptor_base &amp;RHS)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00308">iterator.h:308</a></div></div>
71
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a3571f11b56b4970ffff3c021f6fb47e8">SVF::iter_facade_base::IsRandomAccess</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00079">iterator.h:79</a></div></div>
72
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html">SVF::iter_facade_base</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00067">iterator.h:67</a></div></div>
73
+ <div class="ttc" id="namespaceSVF_html_a3b6bc8132d0fd4902888ab9f77c20124"><div class="ttname"><a href="namespaceSVF.html#a3b6bc8132d0fd4902888ab9f77c20124">SVF::make_range</a></div><div class="ttdeci">iter_range&lt; T &gt; make_range(T x, T y)</div><div class="ttdef"><b>Definition:</b> <a href="iterator__range_8h_source.html#l00064">iterator_range.h:64</a></div></div>
74
+ <div class="ttc" id="classSVF_1_1pointer__iterator_html_a90b49a39706f22db66f33c5e527235e9"><div class="ttname"><a href="classSVF_1_1pointer__iterator.html#a90b49a39706f22db66f33c5e527235e9">SVF::pointer_iterator::pointer_iterator</a></div><div class="ttdeci">pointer_iterator(WrappedIteratorT u)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00375">iterator.h:375</a></div></div>
75
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_afa1dc067ea97ae5db1e2618e47be1525"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#afa1dc067ea97ae5db1e2618e47be1525">SVF::iter_adaptor_base::wrapped</a></div><div class="ttdeci">const WrappedIteratorT &amp; wrapped() const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00252">iterator.h:252</a></div></div>
76
+ <div class="ttc" id="structSVF_1_1pointee__iter_html_a77dce78a5bd0330658dc75a38c3fc329"><div class="ttname"><a href="structSVF_1_1pointee__iter.html#a77dce78a5bd0330658dc75a38c3fc329">SVF::pointee_iter::pointee_iter</a></div><div class="ttdeci">pointee_iter(U &amp;&amp;u)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00343">iterator.h:343</a></div></div>
76
77
  <div class="ttc" id="iterator__range_8h_html"><div class="ttname"><a href="iterator__range_8h.html">iterator_range.h</a></div></div>
77
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a11ebcbea3c495045f2bef3d4a0b92e61"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a11ebcbea3c495045f2bef3d4a0b92e61">llvm::iterator_facade_base::operator&lt;=</a></div><div class="ttdeci">bool operator&lt;=(const DerivedT &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00178">iterator.h:178</a></div></div>
78
- <div class="ttc" id="classllvm_1_1iterator__facade__base_1_1ReferenceProxy_html_ac4e5c0067c64cd5c7e0184218cae3dd2"><div class="ttname"><a href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ac4e5c0067c64cd5c7e0184218cae3dd2">llvm::iterator_facade_base::ReferenceProxy::I</a></div><div class="ttdeci">DerivedT I</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00094">iterator.h:94</a></div></div>
79
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_ac1f22569ffff340b8f178b93513bc0eb"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#ac1f22569ffff340b8f178b93513bc0eb">llvm::iterator_adaptor_base&lt; pointer_iterator&lt; WrappedIteratorT, T &gt;, WrappedIteratorT, std::iterator_traits&lt; WrappedIteratorT &gt;::iterator_category, T &gt;::BaseT</a></div><div class="ttdeci">typename iterator_adaptor_base::iterator_facade_base BaseT</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00239">iterator.h:239</a></div></div>
80
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_ae99ad011019c5d09c5923dd020404e40"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#ae99ad011019c5d09c5923dd020404e40">llvm::iterator_facade_base::operator-&gt;</a></div><div class="ttdeci">PointerT operator-&gt;()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00193">iterator.h:193</a></div></div>
81
- <div class="ttc" id="classllvm_1_1iterator__facade__base_1_1ReferenceProxy_html"><div class="ttname"><a href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html">llvm::iterator_facade_base::ReferenceProxy</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00090">iterator.h:90</a></div></div>
82
- <div class="ttc" id="classllvm_1_1pointer__iterator_html_ac6288459e1f350103a2cd26d20ce0df7"><div class="ttname"><a href="classllvm_1_1pointer__iterator.html#ac6288459e1f350103a2cd26d20ce0df7">llvm::pointer_iterator::Ptr</a></div><div class="ttdeci">T Ptr</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00370">iterator.h:370</a></div></div>
83
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_abf1116bfe125f6672bd752c1a1af1f6d"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#abf1116bfe125f6672bd752c1a1af1f6d">llvm::iterator_adaptor_base::operator-=</a></div><div class="ttdeci">DerivedT &amp; operator-=(difference_type n)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00268">iterator.h:268</a></div></div>
84
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_ac111dbf74717bf5e6db6b9f8d5a81809a4e1f229fa73b6b5c2f25734ab347c51f"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#ac111dbf74717bf5e6db6b9f8d5a81809a4e1f229fa73b6b5c2f25734ab347c51f">llvm::iterator_facade_base::IsBidirectional</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00081">iterator.h:81</a></div></div>
78
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_aa7c90c34509467d719ee0d84fe19d764"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#aa7c90c34509467d719ee0d84fe19d764">SVF::iter_adaptor_base::operator++</a></div><div class="ttdeci">DerivedT &amp; operator++()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00288">iterator.h:288</a></div></div>
79
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a5358c586434e85a8d0989b7d319def2f"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a5358c586434e85a8d0989b7d319def2f">SVF::iter_facade_base::operator&gt;</a></div><div class="ttdeci">bool operator&gt;(const DerivedT &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00170">iterator.h:170</a></div></div>
80
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_a6e0780ec078108f693b34c8ecf10d710"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#a6e0780ec078108f693b34c8ecf10d710">SVF::iter_adaptor_base::operator-=</a></div><div class="ttdeci">DerivedT &amp; operator-=(difference_type n)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00268">iterator.h:268</a></div></div>
81
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_afbad8b4d7822152aec9a206c0e293f96"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#afbad8b4d7822152aec9a206c0e293f96">SVF::iter_adaptor_base&lt; pointer_iterator&lt; WrappedIteratorT, T &gt;, WrappedIteratorT, std::iterator_traits&lt; WrappedIteratorT &gt;::iterator_category, T &gt;::BaseT</a></div><div class="ttdeci">typename iter_adaptor_base::iter_facade_base BaseT</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00239">iterator.h:239</a></div></div>
82
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_a1c80cc24530dbc29b03bf58500e0d636"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#a1c80cc24530dbc29b03bf58500e0d636">SVF::iter_adaptor_base::I</a></div><div class="ttdeci">WrappedIteratorT I</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00242">iterator.h:242</a></div></div>
83
+ <div class="ttc" id="classSVF_1_1pointer__iterator_html"><div class="ttname"><a href="classSVF_1_1pointer__iterator.html">SVF::pointer_iterator</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00364">iterator.h:364</a></div></div>
84
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_aaf17d10058d2e8983e4e7d1559966b80"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#aaf17d10058d2e8983e4e7d1559966b80">SVF::iter_facade_base::operator[]</a></div><div class="ttdeci">ReferenceProxy operator[](DifferenceTypeT n) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00207">iterator.h:207</a></div></div>
85
85
  <div class="ttc" id="namespacestd_html"><div class="ttname"><a href="namespacestd.html">std</a></div></div>
86
- <div class="ttc" id="classllvm_1_1pointer__iterator_html_a60bd26b721875ebe0e82e68ddde20f16"><div class="ttname"><a href="classllvm_1_1pointer__iterator.html#a60bd26b721875ebe0e82e68ddde20f16">llvm::pointer_iterator::operator*</a></div><div class="ttdeci">T &amp; operator*()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00378">iterator.h:378</a></div></div>
87
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a7e07dfa56b74ed115bdddd442e8184e6"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a7e07dfa56b74ed115bdddd442e8184e6">llvm::iterator_facade_base&lt; pointer_iterator&lt; WrappedIteratorT, T &gt;, std::iterator_traits&lt; WrappedIteratorT &gt;::iterator_category, T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::difference_type, std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::pointer, T * &gt;, std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::reference, T &amp; &gt; &gt;::difference_type</a></div><div class="ttdeci">typename std::iterator_traits&lt; WrappedIteratorT &gt;::difference_type difference_type</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00072">iterator.h:72</a></div></div>
88
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_aa8fb990c1847fec73bcbcaab5517ee11"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#aa8fb990c1847fec73bcbcaab5517ee11">llvm::iterator_facade_base::operator--</a></div><div class="ttdeci">DerivedT &amp; operator--()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00146">iterator.h:146</a></div></div>
89
- <div class="ttc" id="classllvm_1_1iterator__facade__base_1_1ReferenceProxy_html_ab871b88a7116b9aa362a92bd47ddd776"><div class="ttname"><a href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ab871b88a7116b9aa362a92bd47ddd776">llvm::iterator_facade_base::ReferenceProxy::ReferenceProxy</a></div><div class="ttdeci">ReferenceProxy(DerivedT I)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00096">iterator.h:96</a></div></div>
86
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a0f03c8e373df19aa195f9aed2d95792b"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a0f03c8e373df19aa195f9aed2d95792b">SVF::iter_facade_base::operator++</a></div><div class="ttdeci">DerivedT operator++(int)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00140">iterator.h:140</a></div></div>
87
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a84d45b0f8c02a1c892d5e7f5104696ed"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a84d45b0f8c02a1c892d5e7f5104696ed">SVF::iter_facade_base::operator!=</a></div><div class="ttdeci">bool operator!=(const DerivedT &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00164">iterator.h:164</a></div></div>
90
88
  <div class="ttc" id="cJSON_8cpp_html_ab6e2ea6dc7bd57d1483413449998230a"><div class="ttname"><a href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a></div><div class="ttdeci">cJSON * n</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l02558">cJSON.cpp:2558</a></div></div>
89
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_aa870b13f5304a62dfd9f5aa535df3e90"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#aa870b13f5304a62dfd9f5aa535df3e90">SVF::iter_adaptor_base::operator-</a></div><div class="ttdeci">difference_type operator-(const DerivedT &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00277">iterator.h:277</a></div></div>
90
+ <div class="ttc" id="structSVF_1_1pointee__iter_html"><div class="ttname"><a href="structSVF_1_1pointee__iter.html">SVF::pointee_iter</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00335">iterator.h:335</a></div></div>
91
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a0ebfb2b2165a04b53d6813badb14dc25"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a0ebfb2b2165a04b53d6813badb14dc25">SVF::iter_facade_base::operator[]</a></div><div class="ttdeci">ReferenceProxy operator[](DifferenceTypeT n)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00201">iterator.h:201</a></div></div>
91
92
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a72502f7f536418621485e90ab98c2016"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVF::SVFUtil::move</a></div><div class="ttdeci">constexpr std::remove_reference&lt; T &gt;::type &amp;&amp; move(T &amp;&amp;t) noexcept</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00657">SVFUtil.h:657</a></div></div>
92
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html">llvm::iterator_facade_base</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00067">iterator.h:67</a></div></div>
93
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a36fb299f78c975d65ffcef4baa31b7f6"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a36fb299f78c975d65ffcef4baa31b7f6">llvm::iterator_facade_base&lt; pointer_iterator&lt; WrappedIteratorT, T &gt;, std::iterator_traits&lt; WrappedIteratorT &gt;::iterator_category, T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::difference_type, std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::pointer, T * &gt;, std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::reference, T &amp; &gt; &gt;::value_type</a></div><div class="ttdeci">T value_type</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00071">iterator.h:71</a></div></div>
94
- <div class="ttc" id="classllvm_1_1iterator__facade__base_1_1ReferenceProxy_html_ae839596dce7d66788c89951710111945"><div class="ttname"><a href="classllvm_1_1iterator__facade__base_1_1ReferenceProxy.html#ae839596dce7d66788c89951710111945">llvm::iterator_facade_base::ReferenceProxy::iterator_facade_base</a></div><div class="ttdeci">friend iterator_facade_base</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00092">iterator.h:92</a></div></div>
95
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_ad3fbc9a33f20835bf81e343d85ce3aaa"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#ad3fbc9a33f20835bf81e343d85ce3aaa">llvm::iterator_adaptor_base::operator==</a></div><div class="ttdeci">friend bool operator==(const iterator_adaptor_base &amp;LHS, const iterator_adaptor_base &amp;RHS)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00303">iterator.h:303</a></div></div>
96
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html">llvm::iterator_adaptor_base</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00235">iterator.h:235</a></div></div>
97
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_affbe77f645dbac4bfd17d00b6ba769a0"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#affbe77f645dbac4bfd17d00b6ba769a0">llvm::iterator_facade_base::operator[]</a></div><div class="ttdeci">ReferenceProxy operator[](DifferenceTypeT n)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00201">iterator.h:201</a></div></div>
98
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_a9e6d0dbf9e60bafcd26c82f901898315"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#a9e6d0dbf9e60bafcd26c82f901898315">llvm::iterator_adaptor_base::operator+=</a></div><div class="ttdeci">DerivedT &amp; operator+=(difference_type n)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00260">iterator.h:260</a></div></div>
99
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a56831a09ff0a972cfb02376aaab2caab"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a56831a09ff0a972cfb02376aaab2caab">llvm::iterator_facade_base::operator+</a></div><div class="ttdeci">friend DerivedT operator+(DifferenceTypeT n, const DerivedT &amp;i)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00117">iterator.h:117</a></div></div>
100
- <div class="ttc" id="classllvm_1_1pointer__iterator_html"><div class="ttname"><a href="classllvm_1_1pointer__iterator.html">llvm::pointer_iterator</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00364">iterator.h:364</a></div></div>
101
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_a86b76a04e3b7abc4a27ca714cea0afee"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#a86b76a04e3b7abc4a27ca714cea0afee">llvm::iterator_adaptor_base::operator-</a></div><div class="ttdeci">difference_type operator-(const DerivedT &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00277">iterator.h:277</a></div></div>
102
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_acf61699425762fc11a314213e3bc6ef4"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#acf61699425762fc11a314213e3bc6ef4">llvm::iterator_facade_base::operator+</a></div><div class="ttdeci">DerivedT operator+(DifferenceTypeT n) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00106">iterator.h:106</a></div></div>
103
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_a0815f647af9e50dd6cd1602e1e262705"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#a0815f647af9e50dd6cd1602e1e262705">llvm::iterator_adaptor_base::iterator_adaptor_base</a></div><div class="ttdeci">iterator_adaptor_base(WrappedIteratorT u)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00246">iterator.h:246</a></div></div>
104
- <div class="ttc" id="namespacellvm_html_ad1a91b49e0c092818a0b82f6cc130a1b"><div class="ttname"><a href="namespacellvm.html#ad1a91b49e0c092818a0b82f6cc130a1b">llvm::make_range</a></div><div class="ttdeci">iterator_range&lt; T &gt; make_range(T x, T y)</div><div class="ttdef"><b>Definition:</b> <a href="iterator__range_8h_source.html#l00064">iterator_range.h:64</a></div></div>
105
- <div class="ttc" id="structllvm_1_1pointee__iterator_html_a59bc770f1247d7ba2273481b962cae62"><div class="ttname"><a href="structllvm_1_1pointee__iterator.html#a59bc770f1247d7ba2273481b962cae62">llvm::pointee_iterator::pointee_iterator</a></div><div class="ttdeci">pointee_iterator(U &amp;&amp;u)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00343">iterator.h:343</a></div></div>
106
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_aef121b79d4aa4b0da5c1c8e9ae45f711"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#aef121b79d4aa4b0da5c1c8e9ae45f711">llvm::iterator_facade_base::operator[]</a></div><div class="ttdeci">ReferenceProxy operator[](DifferenceTypeT n) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00207">iterator.h:207</a></div></div>
107
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a5e76a6059a007866f3a307fdaf8f3401"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a5e76a6059a007866f3a307fdaf8f3401">llvm::iterator_facade_base::operator++</a></div><div class="ttdeci">DerivedT &amp; operator++()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00134">iterator.h:134</a></div></div>
108
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a1a6b6c67bf160e7e63b724ec72624ab2"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a1a6b6c67bf160e7e63b724ec72624ab2">llvm::iterator_facade_base::operator-&gt;</a></div><div class="ttdeci">PointerT operator-&gt;() const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00197">iterator.h:197</a></div></div>
109
- <div class="ttc" id="structllvm_1_1pointee__iterator_html"><div class="ttname"><a href="structllvm_1_1pointee__iterator.html">llvm::pointee_iterator</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00335">iterator.h:335</a></div></div>
110
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_a395dc6bf1e4e4f1ee18354a9a2203259"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#a395dc6bf1e4e4f1ee18354a9a2203259">llvm::iterator_adaptor_base::operator++</a></div><div class="ttdeci">DerivedT &amp; operator++()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00288">iterator.h:288</a></div></div>
111
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a0fb41b5becfd488c52fb8c77d13fbcbc"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a0fb41b5becfd488c52fb8c77d13fbcbc">llvm::iterator_facade_base&lt; pointer_iterator&lt; WrappedIteratorT, T &gt;, std::iterator_traits&lt; WrappedIteratorT &gt;::iterator_category, T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::difference_type, std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::pointer, T * &gt;, std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::reference, T &amp; &gt; &gt;::iterator_category</a></div><div class="ttdeci">std::iterator_traits&lt; WrappedIteratorT &gt;::iterator_category iterator_category</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00070">iterator.h:70</a></div></div>
112
- <div class="ttc" id="structllvm_1_1pointee__iterator_html_a36ef3dae4b2e8b955d19f02b520c80aa"><div class="ttname"><a href="structllvm_1_1pointee__iterator.html#a36ef3dae4b2e8b955d19f02b520c80aa">llvm::pointee_iterator::operator*</a></div><div class="ttdeci">T &amp; operator*() const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00346">iterator.h:346</a></div></div>
113
- <div class="ttc" id="classllvm_1_1iterator__range_html"><div class="ttname"><a href="classllvm_1_1iterator__range.html">llvm::iterator_range</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator__range_8h_source.html#l00031">iterator_range.h:31</a></div></div>
114
- <div class="ttc" id="classllvm_1_1pointer__iterator_html_a738f3d6c147e1670a42d66c960bed2fc"><div class="ttname"><a href="classllvm_1_1pointer__iterator.html#a738f3d6c147e1670a42d66c960bed2fc">llvm::pointer_iterator::pointer_iterator</a></div><div class="ttdeci">pointer_iterator(WrappedIteratorT u)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00375">iterator.h:375</a></div></div>
115
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_a924ad86f571d53385616b5663a1cf077"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#a924ad86f571d53385616b5663a1cf077">llvm::iterator_adaptor_base::operator--</a></div><div class="ttdeci">DerivedT &amp; operator--()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00294">iterator.h:294</a></div></div>
116
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_a780f0b7d17722cfe06d228fea3c060f7"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#a780f0b7d17722cfe06d228fea3c060f7">llvm::iterator_adaptor_base::wrapped</a></div><div class="ttdeci">const WrappedIteratorT &amp; wrapped() const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00252">iterator.h:252</a></div></div>
117
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_a563ec95255977c34566292cbdce193b3"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#a563ec95255977c34566292cbdce193b3">llvm::iterator_adaptor_base::I</a></div><div class="ttdeci">WrappedIteratorT I</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00242">iterator.h:242</a></div></div>
118
- <div class="ttc" id="namespacellvm_html_aec01581c3275a7fab5a18b88a02c96b7"><div class="ttname"><a href="namespacellvm.html#aec01581c3275a7fab5a18b88a02c96b7">llvm::make_pointee_range</a></div><div class="ttdeci">iterator_range&lt; pointee_iterator&lt; WrappedIteratorT &gt; &gt; make_pointee_range(RangeT &amp;&amp;Range)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00355">iterator.h:355</a></div></div>
119
- <div class="ttc" id="classllvm_1_1pointer__iterator_html_a5623e1644b102203f3bbf4533c74abaa"><div class="ttname"><a href="classllvm_1_1pointer__iterator.html#a5623e1644b102203f3bbf4533c74abaa">llvm::pointer_iterator::operator*</a></div><div class="ttdeci">const T &amp; operator*() const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00382">iterator.h:382</a></div></div>
120
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a2fe5a54c4c470c05190130854c0baca3"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a2fe5a54c4c470c05190130854c0baca3">llvm::iterator_facade_base::operator--</a></div><div class="ttdeci">DerivedT operator--(int)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00153">iterator.h:153</a></div></div>
121
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a668b849a4f26755eae386315d5ea363c"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a668b849a4f26755eae386315d5ea363c">llvm::iterator_facade_base::operator++</a></div><div class="ttdeci">DerivedT operator++(int)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00140">iterator.h:140</a></div></div>
122
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a9677d8ef8998cc763948bfdfc2f73c6e"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a9677d8ef8998cc763948bfdfc2f73c6e">llvm::iterator_facade_base::operator&gt;</a></div><div class="ttdeci">bool operator&gt;(const DerivedT &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00170">iterator.h:170</a></div></div>
123
- <div class="ttc" id="classllvm_1_1iterator__facade__base_html_a9ac08db5b07aefa9e82e65806804268b"><div class="ttname"><a href="classllvm_1_1iterator__facade__base.html#a9ac08db5b07aefa9e82e65806804268b">llvm::iterator_facade_base&lt; pointer_iterator&lt; WrappedIteratorT, T &gt;, std::iterator_traits&lt; WrappedIteratorT &gt;::iterator_category, T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::difference_type, std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::pointer, T * &gt;, std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::reference, T &amp; &gt; &gt;::reference</a></div><div class="ttdeci">std::conditional_t&lt; std::is_same&lt; T, typename std::iterator_traits&lt; WrappedIteratorT &gt;::value_type &gt;::value, typename std::iterator_traits&lt; WrappedIteratorT &gt;::reference, T &amp;&gt; reference</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00074">iterator.h:74</a></div></div>
124
- <div class="ttc" id="namespacellvm_html_af8941b8ce2fe4581623e4962b287cc5c"><div class="ttname"><a href="namespacellvm.html#af8941b8ce2fe4581623e4962b287cc5c">llvm::make_pointer_range</a></div><div class="ttdeci">iterator_range&lt; pointer_iterator&lt; WrappedIteratorT &gt; &gt; make_pointer_range(RangeT &amp;&amp;Range)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00391">iterator.h:391</a></div></div>
125
- <div class="ttc" id="classllvm_1_1iterator__adaptor__base_html_a9f74fe2ddfed7feb928edc871cb213f6"><div class="ttname"><a href="classllvm_1_1iterator__adaptor__base.html#a9f74fe2ddfed7feb928edc871cb213f6">llvm::iterator_adaptor_base::operator&lt;</a></div><div class="ttdeci">friend bool operator&lt;(const iterator_adaptor_base &amp;LHS, const iterator_adaptor_base &amp;RHS)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00308">iterator.h:308</a></div></div>
93
+ <div class="ttc" id="classSVF_1_1pointer__iterator_html_afe7d2b1087c56d028a58abbce9ce3b64"><div class="ttname"><a href="classSVF_1_1pointer__iterator.html#afe7d2b1087c56d028a58abbce9ce3b64">SVF::pointer_iterator::operator*</a></div><div class="ttdeci">const T &amp; operator*() const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00382">iterator.h:382</a></div></div>
94
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_ad3e91fd59221ddbdc889bc081159f611"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#ad3e91fd59221ddbdc889bc081159f611">SVF::iter_adaptor_base::iter_adaptor_base</a></div><div class="ttdeci">iter_adaptor_base(WrappedIteratorT u)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00246">iterator.h:246</a></div></div>
95
+ <div class="ttc" id="classSVF_1_1pointer__iterator_html_a12bae66eedebffd73730d091d99e3c9a"><div class="ttname"><a href="classSVF_1_1pointer__iterator.html#a12bae66eedebffd73730d091d99e3c9a">SVF::pointer_iterator::operator*</a></div><div class="ttdeci">T &amp; operator*()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00378">iterator.h:378</a></div></div>
96
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_a1c035596091af80262b234384268e3bc"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#a1c035596091af80262b234384268e3bc">SVF::iter_adaptor_base::operator--</a></div><div class="ttdeci">DerivedT &amp; operator--()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00294">iterator.h:294</a></div></div>
97
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a8d2e47a4de7b98466255b4846bdde26c"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a8d2e47a4de7b98466255b4846bdde26c">SVF::iter_facade_base&lt; mapped_iter&lt; ItTy, FuncTy &gt;, std::iterator_traits&lt; ItTy &gt;::iterator_category, std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::difference_type, std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::pointer, std::remove_reference&lt; FuncReturnTy &gt;::type * &gt;, std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::reference, std::remove_reference&lt; FuncReturnTy &gt;::type &amp; &gt; &gt;::value_type</a></div><div class="ttdeci">std::remove_reference&lt; FuncReturnTy &gt;::type value_type</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00071">iterator.h:71</a></div></div>
98
+ <div class="ttc" id="classSVF_1_1pointer__iterator_html_a0dd739c7a521b7efe951bb9712ddcd14"><div class="ttname"><a href="classSVF_1_1pointer__iterator.html#a0dd739c7a521b7efe951bb9712ddcd14">SVF::pointer_iterator::Ptr</a></div><div class="ttdeci">T Ptr</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00370">iterator.h:370</a></div></div>
99
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_adee425f22948da744f8aa100719c83cf"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#adee425f22948da744f8aa100719c83cf">SVF::iter_facade_base::operator&lt;=</a></div><div class="ttdeci">bool operator&lt;=(const DerivedT &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00178">iterator.h:178</a></div></div>
100
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_affa36a9a632684c92c334b52f764626d"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#affa36a9a632684c92c334b52f764626d">SVF::iter_facade_base::operator--</a></div><div class="ttdeci">DerivedT &amp; operator--()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00146">iterator.h:146</a></div></div>
101
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_aa9d4c4b13e555b7979672c20d9a40a24"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#aa9d4c4b13e555b7979672c20d9a40a24">SVF::iter_facade_base::operator+</a></div><div class="ttdeci">DerivedT operator+(DifferenceTypeT n) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00106">iterator.h:106</a></div></div>
102
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a7883aae06037a1b966e33cced95da49b"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a7883aae06037a1b966e33cced95da49b">SVF::iter_facade_base&lt; mapped_iter&lt; ItTy, FuncTy &gt;, std::iterator_traits&lt; ItTy &gt;::iterator_category, std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::difference_type, std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::pointer, std::remove_reference&lt; FuncReturnTy &gt;::type * &gt;, std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::reference, std::remove_reference&lt; FuncReturnTy &gt;::type &amp; &gt; &gt;::pointer</a></div><div class="ttdeci">std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::pointer, std::remove_reference&lt; FuncReturnTy &gt;::type *&gt; pointer</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00073">iterator.h:73</a></div></div>
103
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_aabe92262cb9990f3c7d92bf2e9997417"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#aabe92262cb9990f3c7d92bf2e9997417">SVF::iter_facade_base::operator++</a></div><div class="ttdeci">DerivedT &amp; operator++()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00134">iterator.h:134</a></div></div>
104
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_adcb4657aff726d8f7eb0dc3f1dd4ff47"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#adcb4657aff726d8f7eb0dc3f1dd4ff47">SVF::iter_adaptor_base::operator*</a></div><div class="ttdeci">ReferenceT operator*() const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00317">iterator.h:317</a></div></div>
105
+ <div class="ttc" id="namespaceSVF_html_a7a436778318d16678992a3173988afc2"><div class="ttname"><a href="namespaceSVF.html#a7a436778318d16678992a3173988afc2">SVF::make_pointer_range</a></div><div class="ttdeci">iter_range&lt; pointer_iterator&lt; WrappedIteratorT &gt; &gt; make_pointer_range(RangeT &amp;&amp;Range)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00391">iterator.h:391</a></div></div>
106
+ <div class="ttc" id="structSVF_1_1pointee__iter_html_a3e5e7a02b9af71f37213d12f4f18ceb4"><div class="ttname"><a href="structSVF_1_1pointee__iter.html#a3e5e7a02b9af71f37213d12f4f18ceb4">SVF::pointee_iter::operator*</a></div><div class="ttdeci">T &amp; operator*() const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00346">iterator.h:346</a></div></div>
107
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a1935969a70a0312f809db166d65fec89a0552120a5aa8ae40a219b52934ad3409"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a1935969a70a0312f809db166d65fec89a0552120a5aa8ae40a219b52934ad3409">SVF::iter_facade_base::IsBidirectional</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00081">iterator.h:81</a></div></div>
108
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a040de7bda3801ef9c8ba28de1209e0e6"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a040de7bda3801ef9c8ba28de1209e0e6">SVF::iter_facade_base&lt; mapped_iter&lt; ItTy, FuncTy &gt;, std::iterator_traits&lt; ItTy &gt;::iterator_category, std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::difference_type, std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::pointer, std::remove_reference&lt; FuncReturnTy &gt;::type * &gt;, std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::reference, std::remove_reference&lt; FuncReturnTy &gt;::type &amp; &gt; &gt;::iterator_category</a></div><div class="ttdeci">std::iterator_traits&lt; ItTy &gt;::iterator_category iterator_category</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00070">iterator.h:70</a></div></div>
109
+ <div class="ttc" id="namespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode </div><div class="ttdef"><b>Definition:</b> <a href="CFGNormalizer_8h_source.html#l00035">CFGNormalizer.h:35</a></div></div>
110
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_aa637a57840b1741e909c89946294fdd9"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#aa637a57840b1741e909c89946294fdd9">SVF::iter_facade_base::operator-&gt;</a></div><div class="ttdeci">PointerT operator-&gt;() const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00197">iterator.h:197</a></div></div>
111
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_af12e184fc89401f62c079181ff981475"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#af12e184fc89401f62c079181ff981475">SVF::iter_facade_base::operator-</a></div><div class="ttdeci">DerivedT operator-(DifferenceTypeT n) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00124">iterator.h:124</a></div></div>
112
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html_a0cfce21cb7aa24062dd921a9a5bace3a"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html#a0cfce21cb7aa24062dd921a9a5bace3a">SVF::iter_adaptor_base::operator==</a></div><div class="ttdeci">friend bool operator==(const iter_adaptor_base &amp;LHS, const iter_adaptor_base &amp;RHS)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00303">iterator.h:303</a></div></div>
113
+ <div class="ttc" id="namespaceSVF_html_a41ca7c140a3b61d946e8c6338102986e"><div class="ttname"><a href="namespaceSVF.html#a41ca7c140a3b61d946e8c6338102986e">SVF::make_pointee_range</a></div><div class="ttdeci">iter_range&lt; pointee_iter&lt; WrappedIteratorT &gt; &gt; make_pointee_range(RangeT &amp;&amp;Range)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00355">iterator.h:355</a></div></div>
114
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_aa23818fb642768d76bf3955bcaf29ab4"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#aa23818fb642768d76bf3955bcaf29ab4">SVF::iter_facade_base::operator--</a></div><div class="ttdeci">DerivedT operator--(int)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00153">iterator.h:153</a></div></div>
115
+ <div class="ttc" id="classSVF_1_1iter__range_html"><div class="ttname"><a href="classSVF_1_1iter__range.html">SVF::iter_range</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator__range_8h_source.html#l00031">iterator_range.h:31</a></div></div>
116
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a3d501177aef770b02e7d2629b334e32a"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a3d501177aef770b02e7d2629b334e32a">SVF::iter_facade_base&lt; mapped_iter&lt; ItTy, FuncTy &gt;, std::iterator_traits&lt; ItTy &gt;::iterator_category, std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::difference_type, std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::pointer, std::remove_reference&lt; FuncReturnTy &gt;::type * &gt;, std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::reference, std::remove_reference&lt; FuncReturnTy &gt;::type &amp; &gt; &gt;::reference</a></div><div class="ttdeci">std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::reference, std::remove_reference&lt; FuncReturnTy &gt;::type &amp;&gt; reference</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00074">iterator.h:74</a></div></div>
117
+ <div class="ttc" id="classSVF_1_1iter__facade__base_1_1ReferenceProxy_html_ab4717ea89d08ac05464fa95bc7f50ac6"><div class="ttname"><a href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#ab4717ea89d08ac05464fa95bc7f50ac6">SVF::iter_facade_base::ReferenceProxy::iter_facade_base</a></div><div class="ttdeci">friend iter_facade_base</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00092">iterator.h:92</a></div></div>
118
+ <div class="ttc" id="classSVF_1_1iter__adaptor__base_html"><div class="ttname"><a href="classSVF_1_1iter__adaptor__base.html">SVF::iter_adaptor_base</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00235">iterator.h:235</a></div></div>
119
+ <div class="ttc" id="classSVF_1_1iter__facade__base_1_1ReferenceProxy_html"><div class="ttname"><a href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html">SVF::iter_facade_base::ReferenceProxy</a></div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00090">iterator.h:90</a></div></div>
120
+ <div class="ttc" id="classSVF_1_1iter__facade__base_1_1ReferenceProxy_html_aca4eadcdc568988ffddd09d359b1c1c3"><div class="ttname"><a href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aca4eadcdc568988ffddd09d359b1c1c3">SVF::iter_facade_base::ReferenceProxy::I</a></div><div class="ttdeci">DerivedT I</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00094">iterator.h:94</a></div></div>
121
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_ab5d48611f6ef4aac65614576ab17b2e6"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#ab5d48611f6ef4aac65614576ab17b2e6">SVF::iter_facade_base::operator&gt;=</a></div><div class="ttdeci">bool operator&gt;=(const DerivedT &amp;RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00185">iterator.h:185</a></div></div>
122
+ <div class="ttc" id="classSVF_1_1iter__facade__base_1_1ReferenceProxy_html_aabce5b9a8700ecf1415a92ce45b384a2"><div class="ttname"><a href="classSVF_1_1iter__facade__base_1_1ReferenceProxy.html#aabce5b9a8700ecf1415a92ce45b384a2">SVF::iter_facade_base::ReferenceProxy::ReferenceProxy</a></div><div class="ttdeci">ReferenceProxy(DerivedT I)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00096">iterator.h:96</a></div></div>
123
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a56831a09ff0a972cfb02376aaab2caab"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a56831a09ff0a972cfb02376aaab2caab">SVF::iter_facade_base::operator+</a></div><div class="ttdeci">friend DerivedT operator+(DifferenceTypeT n, const DerivedT &amp;i)</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00117">iterator.h:117</a></div></div>
124
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a7a44b9bf5f2a7c367baad3a3066c2b6b"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a7a44b9bf5f2a7c367baad3a3066c2b6b">SVF::iter_facade_base::operator-&gt;</a></div><div class="ttdeci">PointerT operator-&gt;()</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00193">iterator.h:193</a></div></div>
125
+ <div class="ttc" id="classSVF_1_1iter__facade__base_html_a4850340b864a13fb78e52dfb46d0e8a3"><div class="ttname"><a href="classSVF_1_1iter__facade__base.html#a4850340b864a13fb78e52dfb46d0e8a3">SVF::iter_facade_base&lt; mapped_iter&lt; ItTy, FuncTy &gt;, std::iterator_traits&lt; ItTy &gt;::iterator_category, std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::difference_type, std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::pointer, std::remove_reference&lt; FuncReturnTy &gt;::type * &gt;, std::conditional_t&lt; std::is_same&lt; std::remove_reference&lt; FuncReturnTy &gt;::type, typename std::iterator_traits&lt; ItTy &gt;::value_type &gt;::value, typename std::iterator_traits&lt; ItTy &gt;::reference, std::remove_reference&lt; FuncReturnTy &gt;::type &amp; &gt; &gt;::difference_type</a></div><div class="ttdeci">typename std::iterator_traits&lt; ItTy &gt;::difference_type difference_type</div><div class="ttdef"><b>Definition:</b> <a href="iterator_8h_source.html#l00072">iterator.h:72</a></div></div>
126
126
  </div><!-- fragment --></div><!-- contents -->
127
127
  <!-- start footer part -->
128
128
  <hr class="footer"/><address class="footer"><small>