mqt-core 3.3.2__cp314-cp314t-win_amd64.whl

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 (537) hide show
  1. mqt/core/__init__.py +89 -0
  2. mqt/core/__main__.py +55 -0
  3. mqt/core/_commands.py +52 -0
  4. mqt/core/_compat/__init__.py +11 -0
  5. mqt/core/_compat/typing.py +29 -0
  6. mqt/core/_version.py +34 -0
  7. mqt/core/_version.pyi +12 -0
  8. mqt/core/bin/mqt-core-algorithms.dll +0 -0
  9. mqt/core/bin/mqt-core-circuit-optimizer.dll +0 -0
  10. mqt/core/bin/mqt-core-dd.dll +0 -0
  11. mqt/core/bin/mqt-core-ds.dll +0 -0
  12. mqt/core/bin/mqt-core-fomac.dll +0 -0
  13. mqt/core/bin/mqt-core-ir.dll +0 -0
  14. mqt/core/bin/mqt-core-na-fomac.dll +0 -0
  15. mqt/core/bin/mqt-core-na.dll +0 -0
  16. mqt/core/bin/mqt-core-qasm.dll +0 -0
  17. mqt/core/bin/mqt-core-qdmi-driver.dll +0 -0
  18. mqt/core/bin/mqt-core-qdmi-na-device.dll +0 -0
  19. mqt/core/bin/mqt-core-zx.dll +0 -0
  20. mqt/core/dd.cp314t-win_amd64.pyd +0 -0
  21. mqt/core/dd.pyi +1016 -0
  22. mqt/core/dd_evaluation.py +368 -0
  23. mqt/core/fomac.cp314t-win_amd64.pyd +0 -0
  24. mqt/core/fomac.pyi +125 -0
  25. mqt/core/include/mqt-core/algorithms/BernsteinVazirani.hpp +39 -0
  26. mqt/core/include/mqt-core/algorithms/GHZState.hpp +18 -0
  27. mqt/core/include/mqt-core/algorithms/Grover.hpp +33 -0
  28. mqt/core/include/mqt-core/algorithms/QFT.hpp +21 -0
  29. mqt/core/include/mqt-core/algorithms/QPE.hpp +30 -0
  30. mqt/core/include/mqt-core/algorithms/RandomCliffordCircuit.hpp +22 -0
  31. mqt/core/include/mqt-core/algorithms/StatePreparation.hpp +43 -0
  32. mqt/core/include/mqt-core/algorithms/WState.hpp +18 -0
  33. mqt/core/include/mqt-core/algorithms/mqt_core_algorithms_export.h +43 -0
  34. mqt/core/include/mqt-core/boost/config/abi/borland_prefix.hpp +27 -0
  35. mqt/core/include/mqt-core/boost/config/abi/borland_suffix.hpp +12 -0
  36. mqt/core/include/mqt-core/boost/config/abi/msvc_prefix.hpp +22 -0
  37. mqt/core/include/mqt-core/boost/config/abi/msvc_suffix.hpp +8 -0
  38. mqt/core/include/mqt-core/boost/config/abi_prefix.hpp +25 -0
  39. mqt/core/include/mqt-core/boost/config/abi_suffix.hpp +25 -0
  40. mqt/core/include/mqt-core/boost/config/assert_cxx03.hpp +211 -0
  41. mqt/core/include/mqt-core/boost/config/assert_cxx11.hpp +212 -0
  42. mqt/core/include/mqt-core/boost/config/assert_cxx14.hpp +47 -0
  43. mqt/core/include/mqt-core/boost/config/assert_cxx17.hpp +65 -0
  44. mqt/core/include/mqt-core/boost/config/assert_cxx20.hpp +59 -0
  45. mqt/core/include/mqt-core/boost/config/assert_cxx23.hpp +41 -0
  46. mqt/core/include/mqt-core/boost/config/assert_cxx98.hpp +23 -0
  47. mqt/core/include/mqt-core/boost/config/auto_link.hpp +525 -0
  48. mqt/core/include/mqt-core/boost/config/compiler/borland.hpp +342 -0
  49. mqt/core/include/mqt-core/boost/config/compiler/clang.hpp +370 -0
  50. mqt/core/include/mqt-core/boost/config/compiler/clang_version.hpp +89 -0
  51. mqt/core/include/mqt-core/boost/config/compiler/codegear.hpp +389 -0
  52. mqt/core/include/mqt-core/boost/config/compiler/comeau.hpp +59 -0
  53. mqt/core/include/mqt-core/boost/config/compiler/common_edg.hpp +185 -0
  54. mqt/core/include/mqt-core/boost/config/compiler/compaq_cxx.hpp +19 -0
  55. mqt/core/include/mqt-core/boost/config/compiler/cray.hpp +446 -0
  56. mqt/core/include/mqt-core/boost/config/compiler/diab.hpp +26 -0
  57. mqt/core/include/mqt-core/boost/config/compiler/digitalmars.hpp +146 -0
  58. mqt/core/include/mqt-core/boost/config/compiler/gcc.hpp +386 -0
  59. mqt/core/include/mqt-core/boost/config/compiler/gcc_xml.hpp +115 -0
  60. mqt/core/include/mqt-core/boost/config/compiler/greenhills.hpp +28 -0
  61. mqt/core/include/mqt-core/boost/config/compiler/hp_acc.hpp +153 -0
  62. mqt/core/include/mqt-core/boost/config/compiler/intel.hpp +577 -0
  63. mqt/core/include/mqt-core/boost/config/compiler/kai.hpp +33 -0
  64. mqt/core/include/mqt-core/boost/config/compiler/metrowerks.hpp +201 -0
  65. mqt/core/include/mqt-core/boost/config/compiler/mpw.hpp +143 -0
  66. mqt/core/include/mqt-core/boost/config/compiler/nvcc.hpp +64 -0
  67. mqt/core/include/mqt-core/boost/config/compiler/pathscale.hpp +141 -0
  68. mqt/core/include/mqt-core/boost/config/compiler/pgi.hpp +23 -0
  69. mqt/core/include/mqt-core/boost/config/compiler/sgi_mipspro.hpp +29 -0
  70. mqt/core/include/mqt-core/boost/config/compiler/sunpro_cc.hpp +225 -0
  71. mqt/core/include/mqt-core/boost/config/compiler/vacpp.hpp +189 -0
  72. mqt/core/include/mqt-core/boost/config/compiler/visualc.hpp +398 -0
  73. mqt/core/include/mqt-core/boost/config/compiler/xlcpp.hpp +303 -0
  74. mqt/core/include/mqt-core/boost/config/compiler/xlcpp_zos.hpp +174 -0
  75. mqt/core/include/mqt-core/boost/config/detail/cxx_composite.hpp +218 -0
  76. mqt/core/include/mqt-core/boost/config/detail/posix_features.hpp +95 -0
  77. mqt/core/include/mqt-core/boost/config/detail/select_compiler_config.hpp +157 -0
  78. mqt/core/include/mqt-core/boost/config/detail/select_platform_config.hpp +147 -0
  79. mqt/core/include/mqt-core/boost/config/detail/select_stdlib_config.hpp +121 -0
  80. mqt/core/include/mqt-core/boost/config/detail/suffix.hpp +1334 -0
  81. mqt/core/include/mqt-core/boost/config/header_deprecated.hpp +26 -0
  82. mqt/core/include/mqt-core/boost/config/helper_macros.hpp +37 -0
  83. mqt/core/include/mqt-core/boost/config/no_tr1/cmath.hpp +28 -0
  84. mqt/core/include/mqt-core/boost/config/no_tr1/complex.hpp +28 -0
  85. mqt/core/include/mqt-core/boost/config/no_tr1/functional.hpp +28 -0
  86. mqt/core/include/mqt-core/boost/config/no_tr1/memory.hpp +28 -0
  87. mqt/core/include/mqt-core/boost/config/no_tr1/utility.hpp +28 -0
  88. mqt/core/include/mqt-core/boost/config/platform/aix.hpp +33 -0
  89. mqt/core/include/mqt-core/boost/config/platform/amigaos.hpp +15 -0
  90. mqt/core/include/mqt-core/boost/config/platform/beos.hpp +26 -0
  91. mqt/core/include/mqt-core/boost/config/platform/bsd.hpp +83 -0
  92. mqt/core/include/mqt-core/boost/config/platform/cloudabi.hpp +18 -0
  93. mqt/core/include/mqt-core/boost/config/platform/cray.hpp +18 -0
  94. mqt/core/include/mqt-core/boost/config/platform/cygwin.hpp +71 -0
  95. mqt/core/include/mqt-core/boost/config/platform/haiku.hpp +31 -0
  96. mqt/core/include/mqt-core/boost/config/platform/hpux.hpp +87 -0
  97. mqt/core/include/mqt-core/boost/config/platform/irix.hpp +31 -0
  98. mqt/core/include/mqt-core/boost/config/platform/linux.hpp +106 -0
  99. mqt/core/include/mqt-core/boost/config/platform/macos.hpp +87 -0
  100. mqt/core/include/mqt-core/boost/config/platform/qnxnto.hpp +31 -0
  101. mqt/core/include/mqt-core/boost/config/platform/solaris.hpp +31 -0
  102. mqt/core/include/mqt-core/boost/config/platform/symbian.hpp +97 -0
  103. mqt/core/include/mqt-core/boost/config/platform/vms.hpp +25 -0
  104. mqt/core/include/mqt-core/boost/config/platform/vxworks.hpp +422 -0
  105. mqt/core/include/mqt-core/boost/config/platform/wasm.hpp +23 -0
  106. mqt/core/include/mqt-core/boost/config/platform/win32.hpp +90 -0
  107. mqt/core/include/mqt-core/boost/config/platform/zos.hpp +32 -0
  108. mqt/core/include/mqt-core/boost/config/pragma_message.hpp +31 -0
  109. mqt/core/include/mqt-core/boost/config/requires_threads.hpp +92 -0
  110. mqt/core/include/mqt-core/boost/config/stdlib/dinkumware.hpp +324 -0
  111. mqt/core/include/mqt-core/boost/config/stdlib/libcomo.hpp +93 -0
  112. mqt/core/include/mqt-core/boost/config/stdlib/libcpp.hpp +180 -0
  113. mqt/core/include/mqt-core/boost/config/stdlib/libstdcpp3.hpp +482 -0
  114. mqt/core/include/mqt-core/boost/config/stdlib/modena.hpp +79 -0
  115. mqt/core/include/mqt-core/boost/config/stdlib/msl.hpp +98 -0
  116. mqt/core/include/mqt-core/boost/config/stdlib/roguewave.hpp +208 -0
  117. mqt/core/include/mqt-core/boost/config/stdlib/sgi.hpp +168 -0
  118. mqt/core/include/mqt-core/boost/config/stdlib/stlport.hpp +258 -0
  119. mqt/core/include/mqt-core/boost/config/stdlib/vacpp.hpp +74 -0
  120. mqt/core/include/mqt-core/boost/config/stdlib/xlcpp_zos.hpp +61 -0
  121. mqt/core/include/mqt-core/boost/config/user.hpp +133 -0
  122. mqt/core/include/mqt-core/boost/config/warning_disable.hpp +47 -0
  123. mqt/core/include/mqt-core/boost/config/workaround.hpp +305 -0
  124. mqt/core/include/mqt-core/boost/config.hpp +67 -0
  125. mqt/core/include/mqt-core/boost/cstdint.hpp +556 -0
  126. mqt/core/include/mqt-core/boost/cxx11_char_types.hpp +70 -0
  127. mqt/core/include/mqt-core/boost/detail/workaround.hpp +10 -0
  128. mqt/core/include/mqt-core/boost/limits.hpp +146 -0
  129. mqt/core/include/mqt-core/boost/multiprecision/complex128.hpp +24 -0
  130. mqt/core/include/mqt-core/boost/multiprecision/complex_adaptor.hpp +1046 -0
  131. mqt/core/include/mqt-core/boost/multiprecision/concepts/mp_number_archetypes.hpp +257 -0
  132. mqt/core/include/mqt-core/boost/multiprecision/cpp_bin_float/io.hpp +698 -0
  133. mqt/core/include/mqt-core/boost/multiprecision/cpp_bin_float/transcendental.hpp +157 -0
  134. mqt/core/include/mqt-core/boost/multiprecision/cpp_bin_float.hpp +2297 -0
  135. mqt/core/include/mqt-core/boost/multiprecision/cpp_complex.hpp +12 -0
  136. mqt/core/include/mqt-core/boost/multiprecision/cpp_dec_float.hpp +3690 -0
  137. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/add.hpp +368 -0
  138. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/add_unsigned.hpp +387 -0
  139. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/bitwise.hpp +889 -0
  140. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/checked.hpp +178 -0
  141. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/comparison.hpp +374 -0
  142. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/cpp_int_config.hpp +161 -0
  143. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/divide.hpp +703 -0
  144. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/import_export.hpp +248 -0
  145. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/intel_intrinsics.hpp +138 -0
  146. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/limits.hpp +282 -0
  147. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/literals.hpp +295 -0
  148. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/misc.hpp +1457 -0
  149. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/multiply.hpp +848 -0
  150. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/serialize.hpp +211 -0
  151. mqt/core/include/mqt-core/boost/multiprecision/cpp_int/value_pack.hpp +42 -0
  152. mqt/core/include/mqt-core/boost/multiprecision/cpp_int.hpp +2360 -0
  153. mqt/core/include/mqt-core/boost/multiprecision/debug_adaptor.hpp +760 -0
  154. mqt/core/include/mqt-core/boost/multiprecision/detail/assert.hpp +29 -0
  155. mqt/core/include/mqt-core/boost/multiprecision/detail/atomic.hpp +62 -0
  156. mqt/core/include/mqt-core/boost/multiprecision/detail/bitscan.hpp +317 -0
  157. mqt/core/include/mqt-core/boost/multiprecision/detail/check_cpp11_config.hpp +64 -0
  158. mqt/core/include/mqt-core/boost/multiprecision/detail/constexpr.hpp +88 -0
  159. mqt/core/include/mqt-core/boost/multiprecision/detail/default_ops.hpp +4052 -0
  160. mqt/core/include/mqt-core/boost/multiprecision/detail/digits.hpp +49 -0
  161. mqt/core/include/mqt-core/boost/multiprecision/detail/dynamic_array.hpp +44 -0
  162. mqt/core/include/mqt-core/boost/multiprecision/detail/empty_value.hpp +87 -0
  163. mqt/core/include/mqt-core/boost/multiprecision/detail/endian.hpp +35 -0
  164. mqt/core/include/mqt-core/boost/multiprecision/detail/et_ops.hpp +1831 -0
  165. mqt/core/include/mqt-core/boost/multiprecision/detail/float128_functions.hpp +95 -0
  166. mqt/core/include/mqt-core/boost/multiprecision/detail/float_string_cvt.hpp +333 -0
  167. mqt/core/include/mqt-core/boost/multiprecision/detail/fpclassify.hpp +101 -0
  168. mqt/core/include/mqt-core/boost/multiprecision/detail/functions/constants.hpp +288 -0
  169. mqt/core/include/mqt-core/boost/multiprecision/detail/functions/pow.hpp +905 -0
  170. mqt/core/include/mqt-core/boost/multiprecision/detail/functions/trig.hpp +1058 -0
  171. mqt/core/include/mqt-core/boost/multiprecision/detail/functions/trunc.hpp +82 -0
  172. mqt/core/include/mqt-core/boost/multiprecision/detail/generic_interconvert.hpp +687 -0
  173. mqt/core/include/mqt-core/boost/multiprecision/detail/hash.hpp +56 -0
  174. mqt/core/include/mqt-core/boost/multiprecision/detail/integer_ops.hpp +474 -0
  175. mqt/core/include/mqt-core/boost/multiprecision/detail/itos.hpp +39 -0
  176. mqt/core/include/mqt-core/boost/multiprecision/detail/min_max.hpp +106 -0
  177. mqt/core/include/mqt-core/boost/multiprecision/detail/no_et_ops.hpp +661 -0
  178. mqt/core/include/mqt-core/boost/multiprecision/detail/no_exceptions_support.hpp +55 -0
  179. mqt/core/include/mqt-core/boost/multiprecision/detail/number_base.hpp +1656 -0
  180. mqt/core/include/mqt-core/boost/multiprecision/detail/number_compare.hpp +848 -0
  181. mqt/core/include/mqt-core/boost/multiprecision/detail/precision.hpp +313 -0
  182. mqt/core/include/mqt-core/boost/multiprecision/detail/rebind.hpp +19 -0
  183. mqt/core/include/mqt-core/boost/multiprecision/detail/standalone_config.hpp +148 -0
  184. mqt/core/include/mqt-core/boost/multiprecision/detail/static_array.hpp +42 -0
  185. mqt/core/include/mqt-core/boost/multiprecision/detail/string_helpers.hpp +48 -0
  186. mqt/core/include/mqt-core/boost/multiprecision/detail/tables.hpp +80 -0
  187. mqt/core/include/mqt-core/boost/multiprecision/detail/ublas_interop.hpp +75 -0
  188. mqt/core/include/mqt-core/boost/multiprecision/detail/uniform_int_distribution.hpp +212 -0
  189. mqt/core/include/mqt-core/boost/multiprecision/detail/utype_helper.hpp +374 -0
  190. mqt/core/include/mqt-core/boost/multiprecision/eigen.hpp +248 -0
  191. mqt/core/include/mqt-core/boost/multiprecision/float128.hpp +920 -0
  192. mqt/core/include/mqt-core/boost/multiprecision/fwd.hpp +268 -0
  193. mqt/core/include/mqt-core/boost/multiprecision/gmp.hpp +4060 -0
  194. mqt/core/include/mqt-core/boost/multiprecision/integer.hpp +363 -0
  195. mqt/core/include/mqt-core/boost/multiprecision/logged_adaptor.hpp +834 -0
  196. mqt/core/include/mqt-core/boost/multiprecision/miller_rabin.hpp +221 -0
  197. mqt/core/include/mqt-core/boost/multiprecision/mpc.hpp +1721 -0
  198. mqt/core/include/mqt-core/boost/multiprecision/mpfi.hpp +2559 -0
  199. mqt/core/include/mqt-core/boost/multiprecision/mpfr.hpp +3644 -0
  200. mqt/core/include/mqt-core/boost/multiprecision/number.hpp +2500 -0
  201. mqt/core/include/mqt-core/boost/multiprecision/random.hpp +23 -0
  202. mqt/core/include/mqt-core/boost/multiprecision/rational_adaptor.hpp +1289 -0
  203. mqt/core/include/mqt-core/boost/multiprecision/tommath.hpp +1034 -0
  204. mqt/core/include/mqt-core/boost/multiprecision/traits/explicit_conversion.hpp +67 -0
  205. mqt/core/include/mqt-core/boost/multiprecision/traits/extract_exponent_type.hpp +28 -0
  206. mqt/core/include/mqt-core/boost/multiprecision/traits/is_backend.hpp +91 -0
  207. mqt/core/include/mqt-core/boost/multiprecision/traits/is_byte_container.hpp +51 -0
  208. mqt/core/include/mqt-core/boost/multiprecision/traits/is_complex.hpp +22 -0
  209. mqt/core/include/mqt-core/boost/multiprecision/traits/is_convertible_arithmetic.hpp +51 -0
  210. mqt/core/include/mqt-core/boost/multiprecision/traits/is_restricted_conversion.hpp +47 -0
  211. mqt/core/include/mqt-core/boost/multiprecision/traits/is_variable_precision.hpp +25 -0
  212. mqt/core/include/mqt-core/boost/multiprecision/traits/max_digits10.hpp +79 -0
  213. mqt/core/include/mqt-core/boost/multiprecision/traits/std_integer_traits.hpp +90 -0
  214. mqt/core/include/mqt-core/boost/multiprecision/traits/transcendental_reduction_type.hpp +21 -0
  215. mqt/core/include/mqt-core/boost/version.hpp +32 -0
  216. mqt/core/include/mqt-core/circuit_optimizer/CircuitOptimizer.hpp +119 -0
  217. mqt/core/include/mqt-core/circuit_optimizer/mqt_core_circuit_optimizer_export.h +43 -0
  218. mqt/core/include/mqt-core/datastructures/DirectedAcyclicGraph.hpp +117 -0
  219. mqt/core/include/mqt-core/datastructures/DirectedGraph.hpp +158 -0
  220. mqt/core/include/mqt-core/datastructures/DisjointSet.hpp +50 -0
  221. mqt/core/include/mqt-core/datastructures/Layer.hpp +172 -0
  222. mqt/core/include/mqt-core/datastructures/SymmetricMatrix.hpp +57 -0
  223. mqt/core/include/mqt-core/datastructures/UndirectedGraph.hpp +227 -0
  224. mqt/core/include/mqt-core/datastructures/mqt_core_ds_export.h +43 -0
  225. mqt/core/include/mqt-core/dd/Approximation.hpp +45 -0
  226. mqt/core/include/mqt-core/dd/CachedEdge.hpp +174 -0
  227. mqt/core/include/mqt-core/dd/Complex.hpp +165 -0
  228. mqt/core/include/mqt-core/dd/ComplexNumbers.hpp +150 -0
  229. mqt/core/include/mqt-core/dd/ComplexValue.hpp +184 -0
  230. mqt/core/include/mqt-core/dd/ComputeTable.hpp +183 -0
  231. mqt/core/include/mqt-core/dd/DDDefinitions.hpp +139 -0
  232. mqt/core/include/mqt-core/dd/DDpackageConfig.hpp +104 -0
  233. mqt/core/include/mqt-core/dd/DensityNoiseTable.hpp +114 -0
  234. mqt/core/include/mqt-core/dd/Edge.hpp +416 -0
  235. mqt/core/include/mqt-core/dd/Export.hpp +438 -0
  236. mqt/core/include/mqt-core/dd/FunctionalityConstruction.hpp +75 -0
  237. mqt/core/include/mqt-core/dd/GateMatrixDefinitions.hpp +43 -0
  238. mqt/core/include/mqt-core/dd/LinkedListBase.hpp +45 -0
  239. mqt/core/include/mqt-core/dd/MemoryManager.hpp +193 -0
  240. mqt/core/include/mqt-core/dd/Node.hpp +223 -0
  241. mqt/core/include/mqt-core/dd/NoiseFunctionality.hpp +144 -0
  242. mqt/core/include/mqt-core/dd/Operations.hpp +306 -0
  243. mqt/core/include/mqt-core/dd/Package.hpp +2036 -0
  244. mqt/core/include/mqt-core/dd/Package_fwd.hpp +22 -0
  245. mqt/core/include/mqt-core/dd/RealNumber.hpp +255 -0
  246. mqt/core/include/mqt-core/dd/RealNumberUniqueTable.hpp +217 -0
  247. mqt/core/include/mqt-core/dd/Simulation.hpp +98 -0
  248. mqt/core/include/mqt-core/dd/StateGeneration.hpp +143 -0
  249. mqt/core/include/mqt-core/dd/StochasticNoiseOperationTable.hpp +88 -0
  250. mqt/core/include/mqt-core/dd/UnaryComputeTable.hpp +121 -0
  251. mqt/core/include/mqt-core/dd/UniqueTable.hpp +243 -0
  252. mqt/core/include/mqt-core/dd/mqt_core_dd_export.h +43 -0
  253. mqt/core/include/mqt-core/dd/statistics/MemoryManagerStatistics.hpp +84 -0
  254. mqt/core/include/mqt-core/dd/statistics/PackageStatistics.hpp +55 -0
  255. mqt/core/include/mqt-core/dd/statistics/Statistics.hpp +48 -0
  256. mqt/core/include/mqt-core/dd/statistics/TableStatistics.hpp +79 -0
  257. mqt/core/include/mqt-core/dd/statistics/UniqueTableStatistics.hpp +31 -0
  258. mqt/core/include/mqt-core/fomac/FoMaC.hpp +568 -0
  259. mqt/core/include/mqt-core/ir/Definitions.hpp +108 -0
  260. mqt/core/include/mqt-core/ir/Permutation.hpp +213 -0
  261. mqt/core/include/mqt-core/ir/QuantumComputation.hpp +596 -0
  262. mqt/core/include/mqt-core/ir/Register.hpp +125 -0
  263. mqt/core/include/mqt-core/ir/mqt_core_ir_export.h +43 -0
  264. mqt/core/include/mqt-core/ir/operations/AodOperation.hpp +92 -0
  265. mqt/core/include/mqt-core/ir/operations/CompoundOperation.hpp +212 -0
  266. mqt/core/include/mqt-core/ir/operations/Control.hpp +142 -0
  267. mqt/core/include/mqt-core/ir/operations/Expression.hpp +847 -0
  268. mqt/core/include/mqt-core/ir/operations/IfElseOperation.hpp +169 -0
  269. mqt/core/include/mqt-core/ir/operations/NonUnitaryOperation.hpp +118 -0
  270. mqt/core/include/mqt-core/ir/operations/OpType.hpp +120 -0
  271. mqt/core/include/mqt-core/ir/operations/OpType.inc +76 -0
  272. mqt/core/include/mqt-core/ir/operations/Operation.hpp +247 -0
  273. mqt/core/include/mqt-core/ir/operations/StandardOperation.hpp +140 -0
  274. mqt/core/include/mqt-core/ir/operations/SymbolicOperation.hpp +144 -0
  275. mqt/core/include/mqt-core/mqt_na_qdmi/device.h +602 -0
  276. mqt/core/include/mqt-core/mqt_na_qdmi/types.h +78 -0
  277. mqt/core/include/mqt-core/na/NAComputation.hpp +185 -0
  278. mqt/core/include/mqt-core/na/device/Device.hpp +410 -0
  279. mqt/core/include/mqt-core/na/device/DeviceMemberInitializers.hpp +724 -0
  280. mqt/core/include/mqt-core/na/device/Generator.hpp +447 -0
  281. mqt/core/include/mqt-core/na/entities/Atom.hpp +62 -0
  282. mqt/core/include/mqt-core/na/entities/Location.hpp +154 -0
  283. mqt/core/include/mqt-core/na/entities/Zone.hpp +95 -0
  284. mqt/core/include/mqt-core/na/fomac/Device.hpp +169 -0
  285. mqt/core/include/mqt-core/na/mqt_core_na_export.h +43 -0
  286. mqt/core/include/mqt-core/na/operations/GlobalCZOp.hpp +38 -0
  287. mqt/core/include/mqt-core/na/operations/GlobalOp.hpp +58 -0
  288. mqt/core/include/mqt-core/na/operations/GlobalRYOp.hpp +42 -0
  289. mqt/core/include/mqt-core/na/operations/LoadOp.hpp +89 -0
  290. mqt/core/include/mqt-core/na/operations/LocalOp.hpp +56 -0
  291. mqt/core/include/mqt-core/na/operations/LocalRZOp.hpp +42 -0
  292. mqt/core/include/mqt-core/na/operations/LocalUOp.hpp +49 -0
  293. mqt/core/include/mqt-core/na/operations/MoveOp.hpp +66 -0
  294. mqt/core/include/mqt-core/na/operations/Op.hpp +62 -0
  295. mqt/core/include/mqt-core/na/operations/ShuttlingOp.hpp +51 -0
  296. mqt/core/include/mqt-core/na/operations/StoreOp.hpp +87 -0
  297. mqt/core/include/mqt-core/qasm3/Exception.hpp +85 -0
  298. mqt/core/include/mqt-core/qasm3/Gate.hpp +65 -0
  299. mqt/core/include/mqt-core/qasm3/Importer.hpp +192 -0
  300. mqt/core/include/mqt-core/qasm3/InstVisitor.hpp +145 -0
  301. mqt/core/include/mqt-core/qasm3/NestedEnvironment.hpp +41 -0
  302. mqt/core/include/mqt-core/qasm3/Parser.hpp +170 -0
  303. mqt/core/include/mqt-core/qasm3/Scanner.hpp +73 -0
  304. mqt/core/include/mqt-core/qasm3/Statement.hpp +486 -0
  305. mqt/core/include/mqt-core/qasm3/Statement_fwd.hpp +39 -0
  306. mqt/core/include/mqt-core/qasm3/StdGates.hpp +232 -0
  307. mqt/core/include/mqt-core/qasm3/Token.hpp +198 -0
  308. mqt/core/include/mqt-core/qasm3/Types.hpp +238 -0
  309. mqt/core/include/mqt-core/qasm3/Types_fwd.hpp +22 -0
  310. mqt/core/include/mqt-core/qasm3/mqt_core_qasm_export.h +43 -0
  311. mqt/core/include/mqt-core/qasm3/passes/CompilerPass.hpp +22 -0
  312. mqt/core/include/mqt-core/qasm3/passes/ConstEvalPass.hpp +102 -0
  313. mqt/core/include/mqt-core/qasm3/passes/TypeCheckPass.hpp +124 -0
  314. mqt/core/include/mqt-core/qdmi/Driver.hpp +431 -0
  315. mqt/core/include/mqt-core/zx/FunctionalityConstruction.hpp +125 -0
  316. mqt/core/include/mqt-core/zx/Rational.hpp +318 -0
  317. mqt/core/include/mqt-core/zx/Rules.hpp +132 -0
  318. mqt/core/include/mqt-core/zx/Simplify.hpp +182 -0
  319. mqt/core/include/mqt-core/zx/Utils.hpp +212 -0
  320. mqt/core/include/mqt-core/zx/ZXDefinitions.hpp +93 -0
  321. mqt/core/include/mqt-core/zx/ZXDiagram.hpp +480 -0
  322. mqt/core/include/mqt-core/zx/mqt_core_zx_export.h +43 -0
  323. mqt/core/include/nlohmann/adl_serializer.hpp +55 -0
  324. mqt/core/include/nlohmann/byte_container_with_subtype.hpp +103 -0
  325. mqt/core/include/nlohmann/detail/abi_macros.hpp +111 -0
  326. mqt/core/include/nlohmann/detail/conversions/from_json.hpp +577 -0
  327. mqt/core/include/nlohmann/detail/conversions/to_chars.hpp +1118 -0
  328. mqt/core/include/nlohmann/detail/conversions/to_json.hpp +479 -0
  329. mqt/core/include/nlohmann/detail/exceptions.hpp +291 -0
  330. mqt/core/include/nlohmann/detail/hash.hpp +129 -0
  331. mqt/core/include/nlohmann/detail/input/binary_reader.hpp +3068 -0
  332. mqt/core/include/nlohmann/detail/input/input_adapters.hpp +549 -0
  333. mqt/core/include/nlohmann/detail/input/json_sax.hpp +986 -0
  334. mqt/core/include/nlohmann/detail/input/lexer.hpp +1643 -0
  335. mqt/core/include/nlohmann/detail/input/parser.hpp +519 -0
  336. mqt/core/include/nlohmann/detail/input/position_t.hpp +37 -0
  337. mqt/core/include/nlohmann/detail/iterators/internal_iterator.hpp +35 -0
  338. mqt/core/include/nlohmann/detail/iterators/iter_impl.hpp +760 -0
  339. mqt/core/include/nlohmann/detail/iterators/iteration_proxy.hpp +235 -0
  340. mqt/core/include/nlohmann/detail/iterators/iterator_traits.hpp +61 -0
  341. mqt/core/include/nlohmann/detail/iterators/json_reverse_iterator.hpp +130 -0
  342. mqt/core/include/nlohmann/detail/iterators/primitive_iterator.hpp +132 -0
  343. mqt/core/include/nlohmann/detail/json_custom_base_class.hpp +39 -0
  344. mqt/core/include/nlohmann/detail/json_pointer.hpp +988 -0
  345. mqt/core/include/nlohmann/detail/json_ref.hpp +78 -0
  346. mqt/core/include/nlohmann/detail/macro_scope.hpp +595 -0
  347. mqt/core/include/nlohmann/detail/macro_unscope.hpp +46 -0
  348. mqt/core/include/nlohmann/detail/meta/call_std/begin.hpp +17 -0
  349. mqt/core/include/nlohmann/detail/meta/call_std/end.hpp +17 -0
  350. mqt/core/include/nlohmann/detail/meta/cpp_future.hpp +171 -0
  351. mqt/core/include/nlohmann/detail/meta/detected.hpp +70 -0
  352. mqt/core/include/nlohmann/detail/meta/identity_tag.hpp +21 -0
  353. mqt/core/include/nlohmann/detail/meta/is_sax.hpp +159 -0
  354. mqt/core/include/nlohmann/detail/meta/std_fs.hpp +29 -0
  355. mqt/core/include/nlohmann/detail/meta/type_traits.hpp +795 -0
  356. mqt/core/include/nlohmann/detail/meta/void_t.hpp +24 -0
  357. mqt/core/include/nlohmann/detail/output/binary_writer.hpp +1850 -0
  358. mqt/core/include/nlohmann/detail/output/output_adapters.hpp +147 -0
  359. mqt/core/include/nlohmann/detail/output/serializer.hpp +988 -0
  360. mqt/core/include/nlohmann/detail/string_concat.hpp +146 -0
  361. mqt/core/include/nlohmann/detail/string_escape.hpp +72 -0
  362. mqt/core/include/nlohmann/detail/string_utils.hpp +37 -0
  363. mqt/core/include/nlohmann/detail/value_t.hpp +118 -0
  364. mqt/core/include/nlohmann/json.hpp +5306 -0
  365. mqt/core/include/nlohmann/json_fwd.hpp +75 -0
  366. mqt/core/include/nlohmann/ordered_map.hpp +359 -0
  367. mqt/core/include/nlohmann/thirdparty/hedley/hedley.hpp +2045 -0
  368. mqt/core/include/nlohmann/thirdparty/hedley/hedley_undef.hpp +158 -0
  369. mqt/core/include/qdmi/qdmi/client.h +990 -0
  370. mqt/core/include/qdmi/qdmi/constants.h +1139 -0
  371. mqt/core/include/qdmi/qdmi/device.h +602 -0
  372. mqt/core/include/qdmi/qdmi/types.h +78 -0
  373. mqt/core/include/spdlog/async.h +99 -0
  374. mqt/core/include/spdlog/async_logger-inl.h +84 -0
  375. mqt/core/include/spdlog/async_logger.h +74 -0
  376. mqt/core/include/spdlog/cfg/argv.h +40 -0
  377. mqt/core/include/spdlog/cfg/env.h +36 -0
  378. mqt/core/include/spdlog/cfg/helpers-inl.h +107 -0
  379. mqt/core/include/spdlog/cfg/helpers.h +29 -0
  380. mqt/core/include/spdlog/common-inl.h +68 -0
  381. mqt/core/include/spdlog/common.h +406 -0
  382. mqt/core/include/spdlog/details/backtracer-inl.h +63 -0
  383. mqt/core/include/spdlog/details/backtracer.h +45 -0
  384. mqt/core/include/spdlog/details/circular_q.h +115 -0
  385. mqt/core/include/spdlog/details/console_globals.h +28 -0
  386. mqt/core/include/spdlog/details/file_helper-inl.h +153 -0
  387. mqt/core/include/spdlog/details/file_helper.h +61 -0
  388. mqt/core/include/spdlog/details/fmt_helper.h +141 -0
  389. mqt/core/include/spdlog/details/log_msg-inl.h +44 -0
  390. mqt/core/include/spdlog/details/log_msg.h +40 -0
  391. mqt/core/include/spdlog/details/log_msg_buffer-inl.h +54 -0
  392. mqt/core/include/spdlog/details/log_msg_buffer.h +32 -0
  393. mqt/core/include/spdlog/details/mpmc_blocking_q.h +177 -0
  394. mqt/core/include/spdlog/details/null_mutex.h +35 -0
  395. mqt/core/include/spdlog/details/os-inl.h +606 -0
  396. mqt/core/include/spdlog/details/os.h +127 -0
  397. mqt/core/include/spdlog/details/periodic_worker-inl.h +26 -0
  398. mqt/core/include/spdlog/details/periodic_worker.h +58 -0
  399. mqt/core/include/spdlog/details/registry-inl.h +270 -0
  400. mqt/core/include/spdlog/details/registry.h +131 -0
  401. mqt/core/include/spdlog/details/synchronous_factory.h +22 -0
  402. mqt/core/include/spdlog/details/tcp_client-windows.h +135 -0
  403. mqt/core/include/spdlog/details/tcp_client.h +127 -0
  404. mqt/core/include/spdlog/details/thread_pool-inl.h +126 -0
  405. mqt/core/include/spdlog/details/thread_pool.h +117 -0
  406. mqt/core/include/spdlog/details/udp_client-windows.h +98 -0
  407. mqt/core/include/spdlog/details/udp_client.h +81 -0
  408. mqt/core/include/spdlog/details/windows_include.h +11 -0
  409. mqt/core/include/spdlog/fmt/bin_to_hex.h +224 -0
  410. mqt/core/include/spdlog/fmt/bundled/args.h +220 -0
  411. mqt/core/include/spdlog/fmt/bundled/base.h +2989 -0
  412. mqt/core/include/spdlog/fmt/bundled/chrono.h +2330 -0
  413. mqt/core/include/spdlog/fmt/bundled/color.h +637 -0
  414. mqt/core/include/spdlog/fmt/bundled/compile.h +539 -0
  415. mqt/core/include/spdlog/fmt/bundled/core.h +5 -0
  416. mqt/core/include/spdlog/fmt/bundled/fmt.license.rst +27 -0
  417. mqt/core/include/spdlog/fmt/bundled/format-inl.h +1948 -0
  418. mqt/core/include/spdlog/fmt/bundled/format.h +4244 -0
  419. mqt/core/include/spdlog/fmt/bundled/os.h +427 -0
  420. mqt/core/include/spdlog/fmt/bundled/ostream.h +167 -0
  421. mqt/core/include/spdlog/fmt/bundled/printf.h +633 -0
  422. mqt/core/include/spdlog/fmt/bundled/ranges.h +850 -0
  423. mqt/core/include/spdlog/fmt/bundled/std.h +728 -0
  424. mqt/core/include/spdlog/fmt/bundled/xchar.h +369 -0
  425. mqt/core/include/spdlog/fmt/chrono.h +23 -0
  426. mqt/core/include/spdlog/fmt/compile.h +23 -0
  427. mqt/core/include/spdlog/fmt/fmt.h +30 -0
  428. mqt/core/include/spdlog/fmt/ostr.h +23 -0
  429. mqt/core/include/spdlog/fmt/ranges.h +23 -0
  430. mqt/core/include/spdlog/fmt/std.h +24 -0
  431. mqt/core/include/spdlog/fmt/xchar.h +23 -0
  432. mqt/core/include/spdlog/formatter.h +17 -0
  433. mqt/core/include/spdlog/fwd.h +18 -0
  434. mqt/core/include/spdlog/logger-inl.h +198 -0
  435. mqt/core/include/spdlog/logger.h +379 -0
  436. mqt/core/include/spdlog/mdc.h +52 -0
  437. mqt/core/include/spdlog/pattern_formatter-inl.h +1340 -0
  438. mqt/core/include/spdlog/pattern_formatter.h +118 -0
  439. mqt/core/include/spdlog/sinks/android_sink.h +137 -0
  440. mqt/core/include/spdlog/sinks/ansicolor_sink-inl.h +142 -0
  441. mqt/core/include/spdlog/sinks/ansicolor_sink.h +116 -0
  442. mqt/core/include/spdlog/sinks/base_sink-inl.h +59 -0
  443. mqt/core/include/spdlog/sinks/base_sink.h +51 -0
  444. mqt/core/include/spdlog/sinks/basic_file_sink-inl.h +48 -0
  445. mqt/core/include/spdlog/sinks/basic_file_sink.h +66 -0
  446. mqt/core/include/spdlog/sinks/callback_sink.h +56 -0
  447. mqt/core/include/spdlog/sinks/daily_file_sink.h +254 -0
  448. mqt/core/include/spdlog/sinks/dist_sink.h +81 -0
  449. mqt/core/include/spdlog/sinks/dup_filter_sink.h +91 -0
  450. mqt/core/include/spdlog/sinks/hourly_file_sink.h +193 -0
  451. mqt/core/include/spdlog/sinks/kafka_sink.h +119 -0
  452. mqt/core/include/spdlog/sinks/mongo_sink.h +108 -0
  453. mqt/core/include/spdlog/sinks/msvc_sink.h +68 -0
  454. mqt/core/include/spdlog/sinks/null_sink.h +41 -0
  455. mqt/core/include/spdlog/sinks/ostream_sink.h +43 -0
  456. mqt/core/include/spdlog/sinks/qt_sinks.h +304 -0
  457. mqt/core/include/spdlog/sinks/ringbuffer_sink.h +67 -0
  458. mqt/core/include/spdlog/sinks/rotating_file_sink-inl.h +179 -0
  459. mqt/core/include/spdlog/sinks/rotating_file_sink.h +93 -0
  460. mqt/core/include/spdlog/sinks/sink-inl.h +22 -0
  461. mqt/core/include/spdlog/sinks/sink.h +34 -0
  462. mqt/core/include/spdlog/sinks/stdout_color_sinks-inl.h +38 -0
  463. mqt/core/include/spdlog/sinks/stdout_color_sinks.h +49 -0
  464. mqt/core/include/spdlog/sinks/stdout_sinks-inl.h +127 -0
  465. mqt/core/include/spdlog/sinks/stdout_sinks.h +84 -0
  466. mqt/core/include/spdlog/sinks/syslog_sink.h +104 -0
  467. mqt/core/include/spdlog/sinks/systemd_sink.h +121 -0
  468. mqt/core/include/spdlog/sinks/tcp_sink.h +75 -0
  469. mqt/core/include/spdlog/sinks/udp_sink.h +69 -0
  470. mqt/core/include/spdlog/sinks/win_eventlog_sink.h +260 -0
  471. mqt/core/include/spdlog/sinks/wincolor_sink-inl.h +172 -0
  472. mqt/core/include/spdlog/sinks/wincolor_sink.h +82 -0
  473. mqt/core/include/spdlog/spdlog-inl.h +96 -0
  474. mqt/core/include/spdlog/spdlog.h +357 -0
  475. mqt/core/include/spdlog/stopwatch.h +66 -0
  476. mqt/core/include/spdlog/tweakme.h +148 -0
  477. mqt/core/include/spdlog/version.h +11 -0
  478. mqt/core/ir/__init__.pyi +2078 -0
  479. mqt/core/ir/operations.pyi +1011 -0
  480. mqt/core/ir/registers.pyi +91 -0
  481. mqt/core/ir/symbolic.pyi +177 -0
  482. mqt/core/ir.cp314t-win_amd64.pyd +0 -0
  483. mqt/core/lib/mqt-core-algorithms.lib +0 -0
  484. mqt/core/lib/mqt-core-circuit-optimizer.lib +0 -0
  485. mqt/core/lib/mqt-core-dd.lib +0 -0
  486. mqt/core/lib/mqt-core-ds.lib +0 -0
  487. mqt/core/lib/mqt-core-fomac.lib +0 -0
  488. mqt/core/lib/mqt-core-ir.lib +0 -0
  489. mqt/core/lib/mqt-core-na-fomac.lib +0 -0
  490. mqt/core/lib/mqt-core-na.lib +0 -0
  491. mqt/core/lib/mqt-core-qasm.lib +0 -0
  492. mqt/core/lib/mqt-core-qdmi-driver.lib +0 -0
  493. mqt/core/lib/mqt-core-qdmi-na-device-gen.lib +0 -0
  494. mqt/core/lib/mqt-core-qdmi-na-device.lib +0 -0
  495. mqt/core/lib/mqt-core-zx.lib +0 -0
  496. mqt/core/lib/pkgconfig/spdlog.pc +13 -0
  497. mqt/core/lib/spdlog.lib +0 -0
  498. mqt/core/na/__init__.py +12 -0
  499. mqt/core/na/fomac.cp314t-win_amd64.pyd +0 -0
  500. mqt/core/na/fomac.pyi +117 -0
  501. mqt/core/nlohmann_json.natvis +278 -0
  502. mqt/core/plugins/__init__.py +9 -0
  503. mqt/core/plugins/qiskit/__init__.py +19 -0
  504. mqt/core/plugins/qiskit/mqt_to_qiskit.py +420 -0
  505. mqt/core/plugins/qiskit/qiskit_to_mqt.py +562 -0
  506. mqt/core/py.typed +2 -0
  507. mqt/core/share/cmake/mqt-core/AddMQTPythonBinding.cmake +55 -0
  508. mqt/core/share/cmake/mqt-core/Cache.cmake +33 -0
  509. mqt/core/share/cmake/mqt-core/FindGMP.cmake +103 -0
  510. mqt/core/share/cmake/mqt-core/PackageAddTest.cmake +46 -0
  511. mqt/core/share/cmake/mqt-core/PreventInSourceBuilds.cmake +25 -0
  512. mqt/core/share/cmake/mqt-core/StandardProjectSettings.cmake +87 -0
  513. mqt/core/share/cmake/mqt-core/mqt-core-config-version.cmake +85 -0
  514. mqt/core/share/cmake/mqt-core/mqt-core-config.cmake +52 -0
  515. mqt/core/share/cmake/mqt-core/mqt-core-targets-release.cmake +141 -0
  516. mqt/core/share/cmake/mqt-core/mqt-core-targets.cmake +445 -0
  517. mqt/core/share/cmake/nlohmann_json/nlohmann_jsonConfig.cmake +15 -0
  518. mqt/core/share/cmake/nlohmann_json/nlohmann_jsonConfigVersion.cmake +20 -0
  519. mqt/core/share/cmake/nlohmann_json/nlohmann_jsonTargets.cmake +110 -0
  520. mqt/core/share/cmake/qdmi/Cache.cmake +44 -0
  521. mqt/core/share/cmake/qdmi/PrefixHandling.cmake +78 -0
  522. mqt/core/share/cmake/qdmi/prefix_defs.txt +26 -0
  523. mqt/core/share/cmake/qdmi/qdmi-config-version.cmake +85 -0
  524. mqt/core/share/cmake/qdmi/qdmi-config.cmake +42 -0
  525. mqt/core/share/cmake/qdmi/qdmi-targets.cmake +129 -0
  526. mqt/core/share/cmake/spdlog/spdlogConfig.cmake +44 -0
  527. mqt/core/share/cmake/spdlog/spdlogConfigTargets-release.cmake +19 -0
  528. mqt/core/share/cmake/spdlog/spdlogConfigTargets.cmake +121 -0
  529. mqt/core/share/cmake/spdlog/spdlogConfigVersion.cmake +65 -0
  530. mqt/core/share/pkgconfig/nlohmann_json.pc +7 -0
  531. mqt_core-3.3.2.dist-info/DELVEWHEEL +2 -0
  532. mqt_core-3.3.2.dist-info/METADATA +210 -0
  533. mqt_core-3.3.2.dist-info/RECORD +537 -0
  534. mqt_core-3.3.2.dist-info/WHEEL +5 -0
  535. mqt_core-3.3.2.dist-info/entry_points.txt +4 -0
  536. mqt_core-3.3.2.dist-info/licenses/LICENSE.md +22 -0
  537. mqt_core.libs/msvcp140.dll +0 -0
@@ -0,0 +1,482 @@
1
+ // (C) Copyright John Maddock 2001.
2
+ // (C) Copyright Jens Maurer 2001.
3
+ // Use, modification and distribution are subject to the
4
+ // Boost Software License, Version 1.0. (See accompanying file
5
+ // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6
+
7
+ // See http://www.boost.org for most recent version.
8
+
9
+ // config for libstdc++ v3
10
+ // not much to go in here:
11
+
12
+ #define BOOST_GNU_STDLIB 1
13
+
14
+ #ifdef __GLIBCXX__
15
+ #define BOOST_STDLIB "GNU libstdc++ version " BOOST_STRINGIZE(__GLIBCXX__)
16
+ #else
17
+ #define BOOST_STDLIB "GNU libstdc++ version " BOOST_STRINGIZE(__GLIBCPP__)
18
+ #endif
19
+
20
+ #if !defined(_GLIBCPP_USE_WCHAR_T) && !defined(_GLIBCXX_USE_WCHAR_T)
21
+ # define BOOST_NO_CWCHAR
22
+ # define BOOST_NO_CWCTYPE
23
+ # define BOOST_NO_STD_WSTRING
24
+ # define BOOST_NO_STD_WSTREAMBUF
25
+ #endif
26
+
27
+ #if defined(__osf__) && !defined(_REENTRANT) \
28
+ && ( defined(_GLIBCXX_HAVE_GTHR_DEFAULT) || defined(_GLIBCPP_HAVE_GTHR_DEFAULT) )
29
+ // GCC 3 on Tru64 forces the definition of _REENTRANT when any std lib header
30
+ // file is included, therefore for consistency we define it here as well.
31
+ # define _REENTRANT
32
+ #endif
33
+
34
+ #ifdef __GLIBCXX__ // gcc 3.4 and greater:
35
+ # if defined(_GLIBCXX_HAVE_GTHR_DEFAULT) \
36
+ || defined(_GLIBCXX__PTHREADS) \
37
+ || defined(_GLIBCXX_HAS_GTHREADS) \
38
+ || defined(_WIN32) \
39
+ || defined(_AIX) \
40
+ || defined(__HAIKU__)
41
+ //
42
+ // If the std lib has thread support turned on, then turn it on in Boost
43
+ // as well. We do this because some gcc-3.4 std lib headers define _REENTANT
44
+ // while others do not...
45
+ //
46
+ # define BOOST_HAS_THREADS
47
+ # else
48
+ # define BOOST_DISABLE_THREADS
49
+ # endif
50
+ #elif defined(__GLIBCPP__) \
51
+ && !defined(_GLIBCPP_HAVE_GTHR_DEFAULT) \
52
+ && !defined(_GLIBCPP__PTHREADS)
53
+ // disable thread support if the std lib was built single threaded:
54
+ # define BOOST_DISABLE_THREADS
55
+ #endif
56
+
57
+ #if (defined(linux) || defined(__linux) || defined(__linux__)) && defined(__arm__) && defined(_GLIBCPP_HAVE_GTHR_DEFAULT)
58
+ // linux on arm apparently doesn't define _REENTRANT
59
+ // so just turn on threading support whenever the std lib is thread safe:
60
+ # define BOOST_HAS_THREADS
61
+ #endif
62
+
63
+ #if !defined(_GLIBCPP_USE_LONG_LONG) \
64
+ && !defined(_GLIBCXX_USE_LONG_LONG)\
65
+ && defined(BOOST_HAS_LONG_LONG)
66
+ // May have been set by compiler/*.hpp, but "long long" without library
67
+ // support is useless.
68
+ # undef BOOST_HAS_LONG_LONG
69
+ #endif
70
+
71
+ // Apple doesn't seem to reliably defined a *unix* macro
72
+ #if !defined(CYGWIN) && ( defined(__unix__) \
73
+ || defined(__unix) \
74
+ || defined(unix) \
75
+ || defined(__APPLE__) \
76
+ || defined(__APPLE) \
77
+ || defined(APPLE))
78
+ # include <unistd.h>
79
+ #endif
80
+
81
+ #ifndef __VXWORKS__ // VxWorks uses Dinkum, not GNU STL with GCC
82
+ #if defined(__GLIBCXX__) || (defined(__GLIBCPP__) && __GLIBCPP__>=20020514) // GCC >= 3.1.0
83
+ # define BOOST_STD_EXTENSION_NAMESPACE __gnu_cxx
84
+ # define BOOST_HAS_SLIST
85
+ # define BOOST_HAS_HASH
86
+ # define BOOST_SLIST_HEADER <ext/slist>
87
+ # if !defined(__GNUC__) || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3)
88
+ # define BOOST_HASH_SET_HEADER <ext/hash_set>
89
+ # define BOOST_HASH_MAP_HEADER <ext/hash_map>
90
+ # else
91
+ # define BOOST_HASH_SET_HEADER <backward/hash_set>
92
+ # define BOOST_HASH_MAP_HEADER <backward/hash_map>
93
+ # endif
94
+ #endif
95
+ #endif
96
+
97
+ #if defined(__has_include)
98
+ #if defined(BOOST_HAS_HASH)
99
+ #if !__has_include(BOOST_HASH_SET_HEADER) || (__GNUC__ >= 10)
100
+ #undef BOOST_HAS_HASH
101
+ #undef BOOST_HAS_SET_HEADER
102
+ #undef BOOST_HAS_MAP_HEADER
103
+ #endif
104
+ #if !__has_include(BOOST_SLIST_HEADER)
105
+ #undef BOOST_HAS_SLIST
106
+ #undef BOOST_HAS_SLIST_HEADER
107
+ #endif
108
+ #endif
109
+ #endif
110
+
111
+ //
112
+ // Decide whether we have C++11 support turned on:
113
+ //
114
+ #if defined(__GXX_EXPERIMENTAL_CXX0X__) || (__cplusplus >= 201103)
115
+ # define BOOST_LIBSTDCXX11
116
+ #endif
117
+
118
+ //
119
+ // Decide which version of libstdc++ we have, normally
120
+ // libstdc++ C++0x support is detected via __GNUC__, __GNUC_MINOR__, and possibly
121
+ // __GNUC_PATCHLEVEL__ at the suggestion of Jonathan Wakely, one of the libstdc++
122
+ // developers. He also commented:
123
+ //
124
+ // "I'm not sure how useful __GLIBCXX__ is for your purposes, for instance in
125
+ // GCC 4.2.4 it is set to 20080519 but in GCC 4.3.0 it is set to 20080305.
126
+ // Although 4.3.0 was released earlier than 4.2.4, it has better C++0x support
127
+ // than any release in the 4.2 series."
128
+ //
129
+ // Another resource for understanding libstdc++ features is:
130
+ // http://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#manual.intro.status.standard.200x
131
+ //
132
+ // However, using the GCC version number fails when the compiler is clang since this
133
+ // only ever claims to emulate GCC-4.2, see https://svn.boost.org/trac/boost/ticket/7473
134
+ // for a long discussion on this issue. What we can do though is use clang's __has_include
135
+ // to detect the presence of a C++11 header that was introduced with a specific GCC release.
136
+ // We still have to be careful though as many such headers were buggy and/or incomplete when
137
+ // first introduced, so we only check for headers that were fully featured from day 1, and then
138
+ // use that to infer the underlying GCC version:
139
+ //
140
+ #ifdef __clang__
141
+
142
+ #ifdef _GLIBCXX_RELEASE
143
+ # define BOOST_LIBSTDCXX_VERSION (_GLIBCXX_RELEASE * 10000 + 100)
144
+ #else
145
+ //
146
+ // We figure out which gcc version issued this std lib
147
+ // by checking which headers are available:
148
+ //
149
+ #if __has_include(<expected>)
150
+ # define BOOST_LIBSTDCXX_VERSION 120100
151
+ #elif __has_include(<source_location>)
152
+ # define BOOST_LIBSTDCXX_VERSION 110100
153
+ #elif __has_include(<compare>)
154
+ # define BOOST_LIBSTDCXX_VERSION 100100
155
+ #elif __has_include(<memory_resource>)
156
+ # define BOOST_LIBSTDCXX_VERSION 90100
157
+ #elif __has_include(<charconv>)
158
+ # define BOOST_LIBSTDCXX_VERSION 80100
159
+ #elif __has_include(<variant>)
160
+ # define BOOST_LIBSTDCXX_VERSION 70100
161
+ #elif __has_include(<experimental/memory_resource>)
162
+ # define BOOST_LIBSTDCXX_VERSION 60100
163
+ #elif __has_include(<experimental/any>)
164
+ # define BOOST_LIBSTDCXX_VERSION 50100
165
+ #elif __has_include(<shared_mutex>)
166
+ # define BOOST_LIBSTDCXX_VERSION 40900
167
+ #elif __has_include(<ext/cmath>)
168
+ # define BOOST_LIBSTDCXX_VERSION 40800
169
+ #elif __has_include(<scoped_allocator>)
170
+ # define BOOST_LIBSTDCXX_VERSION 40700
171
+ #elif __has_include(<typeindex>)
172
+ # define BOOST_LIBSTDCXX_VERSION 40600
173
+ #elif __has_include(<future>)
174
+ # define BOOST_LIBSTDCXX_VERSION 40500
175
+ #elif __has_include(<ratio>)
176
+ # define BOOST_LIBSTDCXX_VERSION 40400
177
+ #elif __has_include(<array>)
178
+ # define BOOST_LIBSTDCXX_VERSION 40300
179
+ #endif
180
+ #endif
181
+ //
182
+ // If BOOST_HAS_FLOAT128 is set, now that we know the std lib is libstdc++3, check to see if the std lib is
183
+ // configured to support this type. If not disable it:
184
+ //
185
+ #if defined(BOOST_HAS_FLOAT128) && !defined(_GLIBCXX_USE_FLOAT128)
186
+ # undef BOOST_HAS_FLOAT128
187
+ #endif
188
+
189
+ #if (BOOST_LIBSTDCXX_VERSION >= 100000) && defined(BOOST_HAS_HASH)
190
+ //
191
+ // hash_set/hash_map deprecated and have terminal bugs:
192
+ //
193
+ #undef BOOST_HAS_HASH
194
+ #undef BOOST_HAS_SET_HEADER
195
+ #undef BOOST_HAS_MAP_HEADER
196
+ #endif
197
+
198
+
199
+ #if (BOOST_LIBSTDCXX_VERSION >= 100000) && defined(BOOST_HAS_HASH)
200
+ //
201
+ // hash_set/hash_map deprecated and have terminal bugs:
202
+ //
203
+ #undef BOOST_HAS_HASH
204
+ #undef BOOST_HAS_SET_HEADER
205
+ #undef BOOST_HAS_MAP_HEADER
206
+ #endif
207
+
208
+
209
+ #if (BOOST_LIBSTDCXX_VERSION < 50100)
210
+ // libstdc++ does not define this function as it's deprecated in C++11, but clang still looks for it,
211
+ // defining it here is a terrible cludge, but should get things working:
212
+ extern "C" char *gets (char *__s);
213
+ #endif
214
+ //
215
+ // clang is unable to parse some GCC headers, add those workarounds here:
216
+ //
217
+ #if BOOST_LIBSTDCXX_VERSION < 50000
218
+ # define BOOST_NO_CXX11_HDR_REGEX
219
+ #endif
220
+ //
221
+ // GCC 4.7.x has no __cxa_thread_atexit which
222
+ // thread_local objects require for cleanup:
223
+ //
224
+ #if BOOST_LIBSTDCXX_VERSION < 40800
225
+ # define BOOST_NO_CXX11_THREAD_LOCAL
226
+ #endif
227
+ //
228
+ // Early clang versions can handle <chrono>, not exactly sure which versions
229
+ // but certainly up to clang-3.8 and gcc-4.6:
230
+ //
231
+ #if (__clang_major__ < 5)
232
+ # if BOOST_LIBSTDCXX_VERSION < 40800
233
+ # define BOOST_NO_CXX11_HDR_FUTURE
234
+ # define BOOST_NO_CXX11_HDR_MUTEX
235
+ # define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
236
+ # define BOOST_NO_CXX11_HDR_CHRONO
237
+ # endif
238
+ #endif
239
+
240
+ //
241
+ // GCC 4.8 and 9 add working versions of <atomic> and <regex> respectively.
242
+ // However, we have no test for these as the headers were present but broken
243
+ // in early GCC versions.
244
+ //
245
+ #endif
246
+
247
+ #if defined(__SUNPRO_CC) && (__SUNPRO_CC >= 0x5130) && (__cplusplus >= 201103L)
248
+ //
249
+ // Oracle Solaris compiler uses it's own verison of libstdc++ but doesn't
250
+ // set __GNUC__
251
+ //
252
+ #if __SUNPRO_CC >= 0x5140
253
+ #define BOOST_LIBSTDCXX_VERSION 50100
254
+ #else
255
+ #define BOOST_LIBSTDCXX_VERSION 40800
256
+ #endif
257
+ #endif
258
+
259
+ #if !defined(BOOST_LIBSTDCXX_VERSION)
260
+ # define BOOST_LIBSTDCXX_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
261
+ #endif
262
+
263
+ // std::auto_ptr isn't provided with _GLIBCXX_DEPRECATED=0 (GCC 4.5 and earlier)
264
+ // or _GLIBCXX_USE_DEPRECATED=0 (GCC 4.6 and later).
265
+ #if defined(BOOST_LIBSTDCXX11)
266
+ # if BOOST_LIBSTDCXX_VERSION < 40600
267
+ # if !_GLIBCXX_DEPRECATED
268
+ # define BOOST_NO_AUTO_PTR
269
+ # endif
270
+ # elif !defined(_GLIBCXX_USE_DEPRECATED) || !_GLIBCXX_USE_DEPRECATED
271
+ # define BOOST_NO_AUTO_PTR
272
+ # define BOOST_NO_CXX98_BINDERS
273
+ # endif
274
+ #endif
275
+
276
+ // C++0x headers in GCC 4.3.0 and later
277
+ //
278
+ #if (BOOST_LIBSTDCXX_VERSION < 40300) || !defined(BOOST_LIBSTDCXX11)
279
+ # define BOOST_NO_CXX11_HDR_ARRAY
280
+ # define BOOST_NO_CXX11_HDR_TUPLE
281
+ # define BOOST_NO_CXX11_HDR_UNORDERED_MAP
282
+ # define BOOST_NO_CXX11_HDR_UNORDERED_SET
283
+ # define BOOST_NO_CXX11_HDR_FUNCTIONAL
284
+ #endif
285
+
286
+ // C++0x headers in GCC 4.4.0 and later
287
+ //
288
+ #if (BOOST_LIBSTDCXX_VERSION < 40400) || !defined(BOOST_LIBSTDCXX11)
289
+ # define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
290
+ # define BOOST_NO_CXX11_HDR_FORWARD_LIST
291
+ # define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
292
+ # define BOOST_NO_CXX11_HDR_MUTEX
293
+ # define BOOST_NO_CXX11_HDR_RATIO
294
+ # define BOOST_NO_CXX11_HDR_SYSTEM_ERROR
295
+ # define BOOST_NO_CXX11_SMART_PTR
296
+ # define BOOST_NO_CXX11_HDR_EXCEPTION
297
+ #else
298
+ # define BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG
299
+ # define BOOST_HAS_TR1_COMPLEX_OVERLOADS
300
+ #endif
301
+
302
+ // C++0x features in GCC 4.5.0 and later
303
+ //
304
+ #if (BOOST_LIBSTDCXX_VERSION < 40500) || !defined(BOOST_LIBSTDCXX11)
305
+ # define BOOST_NO_CXX11_NUMERIC_LIMITS
306
+ # define BOOST_NO_CXX11_HDR_FUTURE
307
+ # define BOOST_NO_CXX11_HDR_RANDOM
308
+ #endif
309
+
310
+ // C++0x features in GCC 4.6.0 and later
311
+ //
312
+ #if (BOOST_LIBSTDCXX_VERSION < 40600) || !defined(BOOST_LIBSTDCXX11)
313
+ # define BOOST_NO_CXX11_HDR_TYPEINDEX
314
+ # define BOOST_NO_CXX11_ADDRESSOF
315
+ # define BOOST_NO_CXX17_ITERATOR_TRAITS
316
+ #endif
317
+
318
+ // C++0x features in GCC 4.7.0 and later
319
+ //
320
+ #if (BOOST_LIBSTDCXX_VERSION < 40700) || !defined(BOOST_LIBSTDCXX11)
321
+ // Note that although <chrono> existed prior to 4.7, "steady_clock" is spelled "monotonic_clock"
322
+ // so 4.7.0 is the first truly conforming one.
323
+ # define BOOST_NO_CXX11_HDR_CHRONO
324
+ # define BOOST_NO_CXX11_ALLOCATOR
325
+ # define BOOST_NO_CXX11_POINTER_TRAITS
326
+ #endif
327
+ // C++0x features in GCC 4.8.0 and later
328
+ //
329
+ #if (BOOST_LIBSTDCXX_VERSION < 40800) || !defined(BOOST_LIBSTDCXX11)
330
+ // Note that although <atomic> existed prior to gcc 4.8 it was largely unimplemented for many types:
331
+ # define BOOST_NO_CXX11_HDR_ATOMIC
332
+ # define BOOST_NO_CXX11_HDR_THREAD
333
+ #endif
334
+ // C++0x features in GCC 4.9.0 and later
335
+ //
336
+ #if (BOOST_LIBSTDCXX_VERSION < 40900) || !defined(BOOST_LIBSTDCXX11)
337
+ // Although <regex> is present and compilable against, the actual implementation is not functional
338
+ // even for the simplest patterns such as "\d" or "[0-9]". This is the case at least in gcc up to 4.8, inclusively.
339
+ # define BOOST_NO_CXX11_HDR_REGEX
340
+ #endif
341
+ #if (BOOST_LIBSTDCXX_VERSION < 40900) || (__cplusplus <= 201103)
342
+ # define BOOST_NO_CXX14_STD_EXCHANGE
343
+ #endif
344
+
345
+ //
346
+ // C++0x features in GCC 5.1 and later
347
+ //
348
+ #if (BOOST_LIBSTDCXX_VERSION < 50100) || !defined(BOOST_LIBSTDCXX11)
349
+ # define BOOST_NO_CXX11_HDR_TYPE_TRAITS
350
+ # define BOOST_NO_CXX11_HDR_CODECVT
351
+ # define BOOST_NO_CXX11_ATOMIC_SMART_PTR
352
+ # define BOOST_NO_CXX11_STD_ALIGN
353
+ #endif
354
+
355
+ //
356
+ // C++17 features in GCC 7.1 and later
357
+ //
358
+ #if (BOOST_LIBSTDCXX_VERSION < 70100) || (__cplusplus <= 201402L)
359
+ # define BOOST_NO_CXX17_STD_INVOKE
360
+ # define BOOST_NO_CXX17_STD_APPLY
361
+ # define BOOST_NO_CXX17_HDR_OPTIONAL
362
+ # define BOOST_NO_CXX17_HDR_STRING_VIEW
363
+ # define BOOST_NO_CXX17_HDR_VARIANT
364
+ #endif
365
+
366
+ #if defined(__has_include)
367
+ #if !__has_include(<shared_mutex>)
368
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX
369
+ #elif __cplusplus <= 201103
370
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX
371
+ #endif
372
+ //
373
+ // <execution> has a dependency to Intel's thread building blocks:
374
+ // unless these are installed seperately, including <execution> leads
375
+ // to inscrutable errors inside libstdc++'s own headers.
376
+ //
377
+ #if (BOOST_LIBSTDCXX_VERSION < 100100)
378
+ #if !__has_include(<tbb/tbb.h>)
379
+ #define BOOST_NO_CXX17_HDR_EXECUTION
380
+ #endif
381
+ #endif
382
+ #elif __cplusplus < 201402 || (BOOST_LIBSTDCXX_VERSION < 40900) || !defined(BOOST_LIBSTDCXX11)
383
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX
384
+ #endif
385
+
386
+ #if BOOST_LIBSTDCXX_VERSION < 100100
387
+ //
388
+ // The header may be present but is incomplete:
389
+ //
390
+ # define BOOST_NO_CXX17_HDR_CHARCONV
391
+ #endif
392
+
393
+ #if BOOST_LIBSTDCXX_VERSION < 110000
394
+ //
395
+ // Header <bit> may be present but lacks std::bit_cast:
396
+ //
397
+ #define BOOST_NO_CXX20_HDR_BIT
398
+ #endif
399
+
400
+ #if BOOST_LIBSTDCXX_VERSION >= 120000
401
+ //
402
+ // Unary function is now deprecated in C++11 and later:
403
+ //
404
+ #if __cplusplus >= 201103L
405
+ #define BOOST_NO_CXX98_FUNCTION_BASE
406
+ #endif
407
+ #endif
408
+
409
+ #ifndef __cpp_impl_coroutine
410
+ # define BOOST_NO_CXX20_HDR_COROUTINE
411
+ #endif
412
+
413
+ //
414
+ // These next defines are mostly for older clang versions with a newer libstdc++ :
415
+ //
416
+ #if !defined(__cpp_lib_concepts)
417
+ #if !defined(BOOST_NO_CXX20_HDR_COMPARE)
418
+ # define BOOST_NO_CXX20_HDR_COMPARE
419
+ #endif
420
+ #if !defined(BOOST_NO_CXX20_HDR_CONCEPTS)
421
+ # define BOOST_NO_CXX20_HDR_CONCEPTS
422
+ #endif
423
+ #if !defined(BOOST_NO_CXX20_HDR_SPAN)
424
+ # define BOOST_NO_CXX20_HDR_SPAN
425
+ #endif
426
+ #if !defined(BOOST_NO_CXX20_HDR_RANGES)
427
+ # define BOOST_NO_CXX20_HDR_RANGES
428
+ #endif
429
+ #endif
430
+
431
+ #if defined(__clang__)
432
+ #if (__clang_major__ < 11) && !defined(BOOST_NO_CXX20_HDR_RANGES)
433
+ # define BOOST_NO_CXX20_HDR_RANGES
434
+ #endif
435
+ #if (__clang_major__ < 10) && (BOOST_LIBSTDCXX_VERSION >= 110000) && !defined(BOOST_NO_CXX11_HDR_CHRONO)
436
+ // Old clang can't parse <chrono>:
437
+ # define BOOST_NO_CXX11_HDR_CHRONO
438
+ # define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
439
+ #endif
440
+ #endif
441
+
442
+ #if defined(__clang__) && (BOOST_LIBSTDCXX_VERSION < 40300) && !defined(BOOST_NO_CXX11_NULLPTR)
443
+ # define BOOST_NO_CXX11_NULLPTR
444
+ #endif
445
+ #if defined(__clang__) && (BOOST_LIBSTDCXX_VERSION < 40300) && defined(BOOST_HAS_INT128) && defined(__APPLE_CC__)
446
+ #undef BOOST_HAS_INT128
447
+ #endif
448
+
449
+ //
450
+ // Headers not present on Solaris with the Oracle compiler:
451
+ #if defined(__SUNPRO_CC) && (__SUNPRO_CC < 0x5140)
452
+ #define BOOST_NO_CXX11_HDR_FUTURE
453
+ #define BOOST_NO_CXX11_HDR_FORWARD_LIST
454
+ #define BOOST_NO_CXX11_HDR_ATOMIC
455
+ // shared_ptr is present, but is not convertible to bool
456
+ // which causes all kinds of problems especially in Boost.Thread
457
+ // but probably elsewhere as well.
458
+ #define BOOST_NO_CXX11_SMART_PTR
459
+ #endif
460
+
461
+ #if (!defined(_GLIBCXX_HAS_GTHREADS) || !defined(_GLIBCXX_USE_C99_STDINT_TR1))
462
+ // Headers not always available:
463
+ # ifndef BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
464
+ # define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
465
+ # endif
466
+ # ifndef BOOST_NO_CXX11_HDR_MUTEX
467
+ # define BOOST_NO_CXX11_HDR_MUTEX
468
+ # endif
469
+ # ifndef BOOST_NO_CXX11_HDR_THREAD
470
+ # define BOOST_NO_CXX11_HDR_THREAD
471
+ # endif
472
+ # ifndef BOOST_NO_CXX14_HDR_SHARED_MUTEX
473
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX
474
+ # endif
475
+ #endif
476
+
477
+ #if (!defined(_GTHREAD_USE_MUTEX_TIMEDLOCK) || (_GTHREAD_USE_MUTEX_TIMEDLOCK == 0)) && !defined(BOOST_NO_CXX11_HDR_MUTEX) && (__GNUC__ < 6)
478
+ // Timed mutexes are not always available:
479
+ # define BOOST_NO_CXX11_HDR_MUTEX
480
+ #endif
481
+
482
+ // --- end ---
@@ -0,0 +1,79 @@
1
+ // (C) Copyright Jens Maurer 2001.
2
+ // Use, modification and distribution are subject to the
3
+ // Boost Software License, Version 1.0. (See accompanying file
4
+ // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
+
6
+ // See http://www.boost.org for most recent version.
7
+
8
+ // Modena C++ standard library (comes with KAI C++)
9
+
10
+ #if !defined(MSIPL_COMPILE_H)
11
+ # include <boost/config/no_tr1/utility.hpp>
12
+ # if !defined(__MSIPL_COMPILE_H)
13
+ # error "This is not the Modena C++ library!"
14
+ # endif
15
+ #endif
16
+
17
+ #ifndef MSIPL_NL_TYPES
18
+ #define BOOST_NO_STD_MESSAGES
19
+ #endif
20
+
21
+ #ifndef MSIPL_WCHART
22
+ #define BOOST_NO_STD_WSTRING
23
+ #endif
24
+
25
+ // C++0x headers not yet implemented
26
+ //
27
+ # define BOOST_NO_CXX11_HDR_ARRAY
28
+ # define BOOST_NO_CXX11_HDR_CHRONO
29
+ # define BOOST_NO_CXX11_HDR_CODECVT
30
+ # define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
31
+ # define BOOST_NO_CXX11_HDR_FORWARD_LIST
32
+ # define BOOST_NO_CXX11_HDR_FUTURE
33
+ # define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
34
+ # define BOOST_NO_CXX11_HDR_MUTEX
35
+ # define BOOST_NO_CXX11_HDR_RANDOM
36
+ # define BOOST_NO_CXX11_HDR_RATIO
37
+ # define BOOST_NO_CXX11_HDR_REGEX
38
+ # define BOOST_NO_CXX11_HDR_SYSTEM_ERROR
39
+ # define BOOST_NO_CXX11_HDR_THREAD
40
+ # define BOOST_NO_CXX11_HDR_TUPLE
41
+ # define BOOST_NO_CXX11_HDR_TYPE_TRAITS
42
+ # define BOOST_NO_CXX11_HDR_TYPEINDEX
43
+ # define BOOST_NO_CXX11_HDR_UNORDERED_MAP
44
+ # define BOOST_NO_CXX11_HDR_UNORDERED_SET
45
+ # define BOOST_NO_CXX11_NUMERIC_LIMITS
46
+ # define BOOST_NO_CXX11_ALLOCATOR
47
+ # define BOOST_NO_CXX11_POINTER_TRAITS
48
+ # define BOOST_NO_CXX11_ATOMIC_SMART_PTR
49
+ # define BOOST_NO_CXX11_SMART_PTR
50
+ # define BOOST_NO_CXX11_HDR_FUNCTIONAL
51
+ # define BOOST_NO_CXX11_HDR_ATOMIC
52
+ # define BOOST_NO_CXX11_STD_ALIGN
53
+ # define BOOST_NO_CXX11_ADDRESSOF
54
+ # define BOOST_NO_CXX11_HDR_EXCEPTION
55
+
56
+ #if defined(__has_include)
57
+ #if !__has_include(<shared_mutex>)
58
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX
59
+ #elif __cplusplus < 201402
60
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX
61
+ #endif
62
+ #else
63
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX
64
+ #endif
65
+
66
+ // C++14 features
67
+ # define BOOST_NO_CXX14_STD_EXCHANGE
68
+
69
+ // C++17 features
70
+ # define BOOST_NO_CXX17_STD_APPLY
71
+ # define BOOST_NO_CXX17_STD_INVOKE
72
+ # define BOOST_NO_CXX17_ITERATOR_TRAITS
73
+
74
+ #define BOOST_STDLIB "Modena C++ standard library"
75
+
76
+
77
+
78
+
79
+
@@ -0,0 +1,98 @@
1
+ // (C) Copyright John Maddock 2001.
2
+ // (C) Copyright Darin Adler 2001.
3
+ // Use, modification and distribution are subject to the
4
+ // Boost Software License, Version 1.0. (See accompanying file
5
+ // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6
+
7
+ // See http://www.boost.org for most recent version.
8
+
9
+ // Metrowerks standard library:
10
+
11
+ #ifndef __MSL_CPP__
12
+ # include <boost/config/no_tr1/utility.hpp>
13
+ # ifndef __MSL_CPP__
14
+ # error This is not the MSL standard library!
15
+ # endif
16
+ #endif
17
+
18
+ #if __MSL_CPP__ >= 0x6000 // Pro 6
19
+ # define BOOST_HAS_HASH
20
+ # define BOOST_STD_EXTENSION_NAMESPACE Metrowerks
21
+ #endif
22
+ #define BOOST_HAS_SLIST
23
+
24
+ #if __MSL_CPP__ < 0x6209
25
+ # define BOOST_NO_STD_MESSAGES
26
+ #endif
27
+
28
+ // check C lib version for <stdint.h>
29
+ #include <cstddef>
30
+
31
+ #if defined(__MSL__) && (__MSL__ >= 0x5000)
32
+ # define BOOST_HAS_STDINT_H
33
+ # if !defined(__PALMOS_TRAPS__)
34
+ # define BOOST_HAS_UNISTD_H
35
+ # endif
36
+ // boilerplate code:
37
+ # include <boost/config/detail/posix_features.hpp>
38
+ #endif
39
+
40
+ #if defined(_MWMT) || _MSL_THREADSAFE
41
+ # define BOOST_HAS_THREADS
42
+ #endif
43
+
44
+ #ifdef _MSL_NO_EXPLICIT_FUNC_TEMPLATE_ARG
45
+ # define BOOST_NO_STD_USE_FACET
46
+ # define BOOST_HAS_TWO_ARG_USE_FACET
47
+ #endif
48
+
49
+ // C++0x headers not yet implemented
50
+ //
51
+ # define BOOST_NO_CXX11_HDR_ARRAY
52
+ # define BOOST_NO_CXX11_HDR_CHRONO
53
+ # define BOOST_NO_CXX11_HDR_CODECVT
54
+ # define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
55
+ # define BOOST_NO_CXX11_HDR_FORWARD_LIST
56
+ # define BOOST_NO_CXX11_HDR_FUTURE
57
+ # define BOOST_NO_CXX11_HDR_INITIALIZER_LIST
58
+ # define BOOST_NO_CXX11_HDR_MUTEX
59
+ # define BOOST_NO_CXX11_HDR_RANDOM
60
+ # define BOOST_NO_CXX11_HDR_RATIO
61
+ # define BOOST_NO_CXX11_HDR_REGEX
62
+ # define BOOST_NO_CXX11_HDR_SYSTEM_ERROR
63
+ # define BOOST_NO_CXX11_HDR_THREAD
64
+ # define BOOST_NO_CXX11_HDR_TUPLE
65
+ # define BOOST_NO_CXX11_HDR_TYPE_TRAITS
66
+ # define BOOST_NO_CXX11_HDR_TYPEINDEX
67
+ # define BOOST_NO_CXX11_HDR_UNORDERED_MAP
68
+ # define BOOST_NO_CXX11_HDR_UNORDERED_SET
69
+ # define BOOST_NO_CXX11_NUMERIC_LIMITS
70
+ # define BOOST_NO_CXX11_ALLOCATOR
71
+ # define BOOST_NO_CXX11_POINTER_TRAITS
72
+ # define BOOST_NO_CXX11_ATOMIC_SMART_PTR
73
+ # define BOOST_NO_CXX11_SMART_PTR
74
+ # define BOOST_NO_CXX11_HDR_FUNCTIONAL
75
+ # define BOOST_NO_CXX11_HDR_ATOMIC
76
+ # define BOOST_NO_CXX11_STD_ALIGN
77
+ # define BOOST_NO_CXX11_ADDRESSOF
78
+ # define BOOST_NO_CXX11_HDR_EXCEPTION
79
+
80
+ #if defined(__has_include)
81
+ #if !__has_include(<shared_mutex>)
82
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX
83
+ #elif __cplusplus < 201402
84
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX
85
+ #endif
86
+ #else
87
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX
88
+ #endif
89
+
90
+ // C++14 features
91
+ # define BOOST_NO_CXX14_STD_EXCHANGE
92
+
93
+ // C++17 features
94
+ # define BOOST_NO_CXX17_STD_APPLY
95
+ # define BOOST_NO_CXX17_STD_INVOKE
96
+ # define BOOST_NO_CXX17_ITERATOR_TRAITS
97
+
98
+ #define BOOST_STDLIB "Metrowerks Standard Library version " BOOST_STRINGIZE(__MSL_CPP__)