qsharp-lang 1.6.1-dev → 1.6.3-dev

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 (314) hide show
  1. package/dist/browser.d.ts +7 -11
  2. package/dist/browser.js +6 -6
  3. package/dist/compiler/compiler.d.ts +25 -38
  4. package/dist/compiler/compiler.js +44 -50
  5. package/dist/debug-service/debug-service.d.ts +3 -3
  6. package/dist/debug-service/debug-service.js +4 -3
  7. package/dist/katas-content.generated.js +139 -72
  8. package/dist/katas-content.generated.md.js +139 -72
  9. package/dist/language-service/language-service.d.ts +4 -4
  10. package/dist/language-service/language-service.js +10 -3
  11. package/dist/main.d.ts +3 -6
  12. package/dist/main.js +4 -4
  13. package/dist/samples.generated.js +4 -4
  14. package/docs/Microsoft.Quantum.Arrays/All.md +1 -1
  15. package/docs/Microsoft.Quantum.Arrays/Any.md +1 -1
  16. package/docs/Microsoft.Quantum.Arrays/Chunks.md +1 -1
  17. package/docs/Microsoft.Quantum.Arrays/CircularlyShifted.md +1 -1
  18. package/docs/Microsoft.Quantum.Arrays/ColumnAt.md +1 -1
  19. package/docs/Microsoft.Quantum.Arrays/Count.md +1 -1
  20. package/docs/Microsoft.Quantum.Arrays/Diagonal.md +1 -1
  21. package/docs/Microsoft.Quantum.Arrays/DrawMany.md +1 -1
  22. package/docs/Microsoft.Quantum.Arrays/Enumerated.md +1 -1
  23. package/docs/Microsoft.Quantum.Arrays/Excluding.md +1 -1
  24. package/docs/Microsoft.Quantum.Arrays/Filtered.md +1 -1
  25. package/docs/Microsoft.Quantum.Arrays/FlatMapped.md +1 -1
  26. package/docs/Microsoft.Quantum.Arrays/Flattened.md +1 -1
  27. package/docs/Microsoft.Quantum.Arrays/Fold.md +1 -1
  28. package/docs/Microsoft.Quantum.Arrays/ForEach.md +1 -1
  29. package/docs/Microsoft.Quantum.Arrays/Head.md +1 -1
  30. package/docs/Microsoft.Quantum.Arrays/HeadAndRest.md +1 -1
  31. package/docs/Microsoft.Quantum.Arrays/IndexOf.md +1 -1
  32. package/docs/Microsoft.Quantum.Arrays/IndexRange.md +1 -1
  33. package/docs/Microsoft.Quantum.Arrays/Interleaved.md +1 -1
  34. package/docs/Microsoft.Quantum.Arrays/IsEmpty.md +1 -1
  35. package/docs/Microsoft.Quantum.Arrays/IsRectangularArray.md +1 -1
  36. package/docs/Microsoft.Quantum.Arrays/IsSorted.md +1 -1
  37. package/docs/Microsoft.Quantum.Arrays/IsSquareArray.md +1 -1
  38. package/docs/Microsoft.Quantum.Arrays/Mapped.md +1 -1
  39. package/docs/Microsoft.Quantum.Arrays/MappedByIndex.md +1 -1
  40. package/docs/Microsoft.Quantum.Arrays/MappedOverRange.md +1 -1
  41. package/docs/Microsoft.Quantum.Arrays/Most.md +1 -1
  42. package/docs/Microsoft.Quantum.Arrays/MostAndTail.md +1 -1
  43. package/docs/Microsoft.Quantum.Arrays/Padded.md +1 -1
  44. package/docs/Microsoft.Quantum.Arrays/Partitioned.md +1 -1
  45. package/docs/Microsoft.Quantum.Arrays/Rest.md +1 -1
  46. package/docs/Microsoft.Quantum.Arrays/Reversed.md +1 -1
  47. package/docs/Microsoft.Quantum.Arrays/SequenceI.md +1 -1
  48. package/docs/Microsoft.Quantum.Arrays/SequenceL.md +1 -1
  49. package/docs/Microsoft.Quantum.Arrays/Sorted.md +1 -1
  50. package/docs/Microsoft.Quantum.Arrays/Subarray.md +1 -1
  51. package/docs/Microsoft.Quantum.Arrays/Swapped.md +1 -1
  52. package/docs/Microsoft.Quantum.Arrays/Tail.md +1 -1
  53. package/docs/Microsoft.Quantum.Arrays/Transposed.md +1 -1
  54. package/docs/Microsoft.Quantum.Arrays/Unzipped.md +1 -1
  55. package/docs/Microsoft.Quantum.Arrays/Where.md +1 -1
  56. package/docs/Microsoft.Quantum.Arrays/Windows.md +1 -1
  57. package/docs/Microsoft.Quantum.Arrays/Zipped.md +1 -1
  58. package/docs/Microsoft.Quantum.Canon/ApplyCNOTChain.md +1 -1
  59. package/docs/Microsoft.Quantum.Canon/ApplyControlledOnBitString.md +1 -1
  60. package/docs/Microsoft.Quantum.Canon/ApplyControlledOnInt.md +1 -1
  61. package/docs/Microsoft.Quantum.Canon/ApplyP.md +1 -1
  62. package/docs/Microsoft.Quantum.Canon/ApplyPauli.md +1 -1
  63. package/docs/Microsoft.Quantum.Canon/ApplyPauliFromBitString.md +1 -1
  64. package/docs/Microsoft.Quantum.Canon/ApplyPauliFromInt.md +1 -1
  65. package/docs/Microsoft.Quantum.Canon/ApplyQFT.md +1 -1
  66. package/docs/Microsoft.Quantum.Canon/ApplyToEach.md +1 -1
  67. package/docs/Microsoft.Quantum.Canon/ApplyToEachA.md +1 -1
  68. package/docs/Microsoft.Quantum.Canon/ApplyToEachC.md +1 -1
  69. package/docs/Microsoft.Quantum.Canon/ApplyToEachCA.md +1 -1
  70. package/docs/Microsoft.Quantum.Canon/ApplyXorInPlace.md +1 -1
  71. package/docs/Microsoft.Quantum.Canon/ApplyXorInPlaceL.md +1 -1
  72. package/docs/Microsoft.Quantum.Canon/CX.md +1 -1
  73. package/docs/Microsoft.Quantum.Canon/CY.md +1 -1
  74. package/docs/Microsoft.Quantum.Canon/CZ.md +1 -1
  75. package/docs/Microsoft.Quantum.Canon/Fst.md +1 -1
  76. package/docs/Microsoft.Quantum.Canon/Snd.md +1 -1
  77. package/docs/Microsoft.Quantum.Canon/SwapReverseRegister.md +1 -1
  78. package/docs/Microsoft.Quantum.Convert/BigIntAsBoolArray.md +1 -1
  79. package/docs/Microsoft.Quantum.Convert/BoolArrayAsBigInt.md +1 -1
  80. package/docs/Microsoft.Quantum.Convert/BoolArrayAsInt.md +1 -1
  81. package/docs/Microsoft.Quantum.Convert/BoolArrayAsResultArray.md +1 -1
  82. package/docs/Microsoft.Quantum.Convert/BoolAsResult.md +1 -1
  83. package/docs/Microsoft.Quantum.Convert/ComplexAsComplexPolar.md +1 -1
  84. package/docs/Microsoft.Quantum.Convert/ComplexPolarAsComplex.md +1 -1
  85. package/docs/Microsoft.Quantum.Convert/IntAsBigInt.md +1 -1
  86. package/docs/Microsoft.Quantum.Convert/IntAsBoolArray.md +1 -1
  87. package/docs/Microsoft.Quantum.Convert/IntAsDouble.md +1 -1
  88. package/docs/Microsoft.Quantum.Convert/ResultArrayAsBoolArray.md +1 -1
  89. package/docs/Microsoft.Quantum.Convert/ResultArrayAsInt.md +1 -1
  90. package/docs/Microsoft.Quantum.Convert/ResultAsBool.md +1 -1
  91. package/docs/Microsoft.Quantum.Core/IsRangeEmpty.md +1 -1
  92. package/docs/Microsoft.Quantum.Core/Length.md +1 -1
  93. package/docs/Microsoft.Quantum.Core/RangeEnd.md +1 -1
  94. package/docs/Microsoft.Quantum.Core/RangeReverse.md +1 -1
  95. package/docs/Microsoft.Quantum.Core/RangeStart.md +1 -1
  96. package/docs/Microsoft.Quantum.Core/RangeStep.md +1 -1
  97. package/docs/Microsoft.Quantum.Core/Repeated.md +1 -1
  98. package/docs/Microsoft.Quantum.Diagnostics/DumpMachine.md +1 -1
  99. package/docs/Microsoft.Quantum.Diagnostics/DumpRegister.md +1 -1
  100. package/docs/Microsoft.Quantum.Diagnostics/Fact.md +1 -1
  101. package/docs/Microsoft.Quantum.Intrinsic/AdjustForSingleControl.md +21 -0
  102. package/docs/Microsoft.Quantum.Intrinsic/ApplyGlobalPhase.md +18 -0
  103. package/docs/Microsoft.Quantum.Intrinsic/CCH.md +18 -0
  104. package/docs/Microsoft.Quantum.Intrinsic/CCNOT.md +1 -1
  105. package/docs/Microsoft.Quantum.Intrinsic/CCY.md +18 -0
  106. package/docs/Microsoft.Quantum.Intrinsic/CCZ.md +18 -0
  107. package/docs/Microsoft.Quantum.Intrinsic/CH.md +18 -0
  108. package/docs/Microsoft.Quantum.Intrinsic/CNOT.md +1 -1
  109. package/docs/Microsoft.Quantum.Intrinsic/CRxx.md +18 -0
  110. package/docs/Microsoft.Quantum.Intrinsic/CRyy.md +18 -0
  111. package/docs/Microsoft.Quantum.Intrinsic/CRz.md +18 -0
  112. package/docs/Microsoft.Quantum.Intrinsic/CRzz.md +18 -0
  113. package/docs/Microsoft.Quantum.Intrinsic/CS.md +18 -0
  114. package/docs/Microsoft.Quantum.Intrinsic/CT.md +18 -0
  115. package/docs/Microsoft.Quantum.Intrinsic/CollectControls.md +27 -0
  116. package/docs/Microsoft.Quantum.Intrinsic/ControllableGlobalPhase.md +18 -0
  117. package/docs/Microsoft.Quantum.Intrinsic/EntangleForJointMeasure.md +18 -0
  118. package/docs/Microsoft.Quantum.Intrinsic/Exp.md +1 -1
  119. package/docs/Microsoft.Quantum.Intrinsic/GlobalPhase.md +18 -0
  120. package/docs/Microsoft.Quantum.Intrinsic/H.md +1 -1
  121. package/docs/Microsoft.Quantum.Intrinsic/I.md +1 -1
  122. package/docs/Microsoft.Quantum.Intrinsic/IndicesOfNonIdentity.md +18 -0
  123. package/docs/Microsoft.Quantum.Intrinsic/M.md +1 -1
  124. package/docs/Microsoft.Quantum.Intrinsic/MapPauli.md +18 -0
  125. package/docs/Microsoft.Quantum.Intrinsic/Measure.md +1 -1
  126. package/docs/Microsoft.Quantum.Intrinsic/Message.md +1 -1
  127. package/docs/Microsoft.Quantum.Intrinsic/PhaseCCX.md +18 -0
  128. package/docs/Microsoft.Quantum.Intrinsic/R.md +1 -1
  129. package/docs/Microsoft.Quantum.Intrinsic/R1.md +1 -1
  130. package/docs/Microsoft.Quantum.Intrinsic/R1Frac.md +1 -1
  131. package/docs/Microsoft.Quantum.Intrinsic/RFrac.md +1 -1
  132. package/docs/Microsoft.Quantum.Intrinsic/RemovePauliI.md +18 -0
  133. package/docs/Microsoft.Quantum.Intrinsic/Reset.md +1 -1
  134. package/docs/Microsoft.Quantum.Intrinsic/ResetAll.md +1 -1
  135. package/docs/Microsoft.Quantum.Intrinsic/Rx.md +1 -1
  136. package/docs/Microsoft.Quantum.Intrinsic/Rxx.md +1 -1
  137. package/docs/Microsoft.Quantum.Intrinsic/Ry.md +1 -1
  138. package/docs/Microsoft.Quantum.Intrinsic/Ryy.md +1 -1
  139. package/docs/Microsoft.Quantum.Intrinsic/Rz.md +1 -1
  140. package/docs/Microsoft.Quantum.Intrinsic/Rzz.md +1 -1
  141. package/docs/Microsoft.Quantum.Intrinsic/S.md +1 -1
  142. package/docs/Microsoft.Quantum.Intrinsic/SWAP.md +1 -1
  143. package/docs/Microsoft.Quantum.Intrinsic/SpreadZ.md +18 -0
  144. package/docs/Microsoft.Quantum.Intrinsic/T.md +1 -1
  145. package/docs/Microsoft.Quantum.Intrinsic/X.md +1 -1
  146. package/docs/Microsoft.Quantum.Intrinsic/Y.md +1 -1
  147. package/docs/Microsoft.Quantum.Intrinsic/Z.md +1 -1
  148. package/docs/Microsoft.Quantum.Logical/Xor.md +1 -1
  149. package/docs/Microsoft.Quantum.Math/AbsComplex.md +1 -1
  150. package/docs/Microsoft.Quantum.Math/AbsComplexPolar.md +1 -1
  151. package/docs/Microsoft.Quantum.Math/AbsD.md +1 -1
  152. package/docs/Microsoft.Quantum.Math/AbsI.md +1 -1
  153. package/docs/Microsoft.Quantum.Math/AbsL.md +1 -1
  154. package/docs/Microsoft.Quantum.Math/AbsSquaredComplex.md +1 -1
  155. package/docs/Microsoft.Quantum.Math/AbsSquaredComplexPolar.md +1 -1
  156. package/docs/Microsoft.Quantum.Math/ApproximateFactorial.md +1 -1
  157. package/docs/Microsoft.Quantum.Math/ArcCos.md +1 -1
  158. package/docs/Microsoft.Quantum.Math/ArcCosh.md +1 -1
  159. package/docs/Microsoft.Quantum.Math/ArcSin.md +1 -1
  160. package/docs/Microsoft.Quantum.Math/ArcSinh.md +1 -1
  161. package/docs/Microsoft.Quantum.Math/ArcTan.md +1 -1
  162. package/docs/Microsoft.Quantum.Math/ArcTan2.md +1 -1
  163. package/docs/Microsoft.Quantum.Math/ArcTanh.md +1 -1
  164. package/docs/Microsoft.Quantum.Math/ArgComplex.md +1 -1
  165. package/docs/Microsoft.Quantum.Math/ArgComplexPolar.md +1 -1
  166. package/docs/Microsoft.Quantum.Math/Binom.md +1 -1
  167. package/docs/Microsoft.Quantum.Math/BitSizeI.md +1 -1
  168. package/docs/Microsoft.Quantum.Math/BitSizeL.md +1 -1
  169. package/docs/Microsoft.Quantum.Math/Ceiling.md +1 -1
  170. package/docs/Microsoft.Quantum.Math/Complex.md +1 -1
  171. package/docs/Microsoft.Quantum.Math/ComplexPolar.md +1 -1
  172. package/docs/Microsoft.Quantum.Math/ContinuedFractionConvergentI.md +1 -1
  173. package/docs/Microsoft.Quantum.Math/ContinuedFractionConvergentL.md +1 -1
  174. package/docs/Microsoft.Quantum.Math/Cos.md +1 -1
  175. package/docs/Microsoft.Quantum.Math/Cosh.md +1 -1
  176. package/docs/Microsoft.Quantum.Math/DivRemI.md +1 -1
  177. package/docs/Microsoft.Quantum.Math/DivRemL.md +1 -1
  178. package/docs/Microsoft.Quantum.Math/DividedByC.md +1 -1
  179. package/docs/Microsoft.Quantum.Math/DividedByCP.md +1 -1
  180. package/docs/Microsoft.Quantum.Math/E.md +1 -1
  181. package/docs/Microsoft.Quantum.Math/ExpModI.md +1 -1
  182. package/docs/Microsoft.Quantum.Math/ExpModL.md +1 -1
  183. package/docs/Microsoft.Quantum.Math/ExtendedGreatestCommonDivisorI.md +1 -1
  184. package/docs/Microsoft.Quantum.Math/ExtendedGreatestCommonDivisorL.md +1 -1
  185. package/docs/Microsoft.Quantum.Math/ExtendedTruncation.md +18 -0
  186. package/docs/Microsoft.Quantum.Math/FactorialI.md +1 -1
  187. package/docs/Microsoft.Quantum.Math/FactorialL.md +1 -1
  188. package/docs/Microsoft.Quantum.Math/Floor.md +1 -1
  189. package/docs/Microsoft.Quantum.Math/GreatestCommonDivisorI.md +1 -1
  190. package/docs/Microsoft.Quantum.Math/GreatestCommonDivisorL.md +1 -1
  191. package/docs/Microsoft.Quantum.Math/HammingWeightI.md +1 -1
  192. package/docs/Microsoft.Quantum.Math/InverseModI.md +1 -1
  193. package/docs/Microsoft.Quantum.Math/InverseModL.md +1 -1
  194. package/docs/Microsoft.Quantum.Math/IsCoprimeI.md +1 -1
  195. package/docs/Microsoft.Quantum.Math/IsCoprimeL.md +1 -1
  196. package/docs/Microsoft.Quantum.Math/IsInfinite.md +1 -1
  197. package/docs/Microsoft.Quantum.Math/IsNaN.md +1 -1
  198. package/docs/Microsoft.Quantum.Math/LargestFixedPoint.md +1 -1
  199. package/docs/Microsoft.Quantum.Math/Lg.md +1 -1
  200. package/docs/Microsoft.Quantum.Math/Log.md +1 -1
  201. package/docs/Microsoft.Quantum.Math/Log10.md +1 -1
  202. package/docs/Microsoft.Quantum.Math/LogFactorialD.md +1 -1
  203. package/docs/Microsoft.Quantum.Math/LogGammaD.md +1 -1
  204. package/docs/Microsoft.Quantum.Math/LogOf2.md +1 -1
  205. package/docs/Microsoft.Quantum.Math/Max.md +1 -1
  206. package/docs/Microsoft.Quantum.Math/MaxD.md +1 -1
  207. package/docs/Microsoft.Quantum.Math/MaxI.md +1 -1
  208. package/docs/Microsoft.Quantum.Math/MaxL.md +1 -1
  209. package/docs/Microsoft.Quantum.Math/Min.md +1 -1
  210. package/docs/Microsoft.Quantum.Math/MinD.md +1 -1
  211. package/docs/Microsoft.Quantum.Math/MinI.md +1 -1
  212. package/docs/Microsoft.Quantum.Math/MinL.md +1 -1
  213. package/docs/Microsoft.Quantum.Math/MinusC.md +1 -1
  214. package/docs/Microsoft.Quantum.Math/MinusCP.md +1 -1
  215. package/docs/Microsoft.Quantum.Math/ModulusI.md +1 -1
  216. package/docs/Microsoft.Quantum.Math/ModulusL.md +1 -1
  217. package/docs/Microsoft.Quantum.Math/NegationC.md +1 -1
  218. package/docs/Microsoft.Quantum.Math/NegationCP.md +1 -1
  219. package/docs/Microsoft.Quantum.Math/PI.md +1 -1
  220. package/docs/Microsoft.Quantum.Math/PNorm.md +1 -1
  221. package/docs/Microsoft.Quantum.Math/PNormalized.md +1 -1
  222. package/docs/Microsoft.Quantum.Math/PlusC.md +1 -1
  223. package/docs/Microsoft.Quantum.Math/PlusCP.md +1 -1
  224. package/docs/Microsoft.Quantum.Math/PowC.md +1 -1
  225. package/docs/Microsoft.Quantum.Math/PowCAsCP.md +24 -0
  226. package/docs/Microsoft.Quantum.Math/PowCP.md +1 -1
  227. package/docs/Microsoft.Quantum.Math/RealMod.md +1 -1
  228. package/docs/Microsoft.Quantum.Math/Round.md +1 -1
  229. package/docs/Microsoft.Quantum.Math/SignD.md +1 -1
  230. package/docs/Microsoft.Quantum.Math/SignI.md +1 -1
  231. package/docs/Microsoft.Quantum.Math/SignL.md +1 -1
  232. package/docs/Microsoft.Quantum.Math/Sin.md +1 -1
  233. package/docs/Microsoft.Quantum.Math/Sinh.md +1 -1
  234. package/docs/Microsoft.Quantum.Math/SmallestFixedPoint.md +1 -1
  235. package/docs/Microsoft.Quantum.Math/Sqrt.md +1 -1
  236. package/docs/Microsoft.Quantum.Math/SquaredNorm.md +1 -1
  237. package/docs/Microsoft.Quantum.Math/Tan.md +1 -1
  238. package/docs/Microsoft.Quantum.Math/Tanh.md +1 -1
  239. package/docs/Microsoft.Quantum.Math/TimesC.md +1 -1
  240. package/docs/Microsoft.Quantum.Math/TimesCP.md +1 -1
  241. package/docs/Microsoft.Quantum.Math/TrailingZeroCountI.md +1 -1
  242. package/docs/Microsoft.Quantum.Math/TrailingZeroCountL.md +1 -1
  243. package/docs/Microsoft.Quantum.Math/Truncate.md +1 -1
  244. package/docs/Microsoft.Quantum.Measurement/MResetEachZ.md +1 -1
  245. package/docs/Microsoft.Quantum.Measurement/MResetX.md +1 -1
  246. package/docs/Microsoft.Quantum.Measurement/MResetY.md +1 -1
  247. package/docs/Microsoft.Quantum.Measurement/MResetZ.md +1 -1
  248. package/docs/Microsoft.Quantum.Measurement/MeasureAllZ.md +1 -1
  249. package/docs/Microsoft.Quantum.Measurement/MeasureEachZ.md +1 -1
  250. package/docs/Microsoft.Quantum.Measurement/MeasureInteger.md +1 -1
  251. package/docs/Microsoft.Quantum.ResourceEstimation/AccountForEstimates.md +1 -1
  252. package/docs/Microsoft.Quantum.ResourceEstimation/AuxQubitCount.md +1 -1
  253. package/docs/Microsoft.Quantum.ResourceEstimation/BeginEstimateCaching.md +1 -1
  254. package/docs/Microsoft.Quantum.ResourceEstimation/BeginRepeatEstimates.md +1 -1
  255. package/docs/Microsoft.Quantum.ResourceEstimation/CczCount.md +1 -1
  256. package/docs/Microsoft.Quantum.ResourceEstimation/EndEstimateCaching.md +1 -1
  257. package/docs/Microsoft.Quantum.ResourceEstimation/EndRepeatEstimates.md +1 -1
  258. package/docs/Microsoft.Quantum.ResourceEstimation/MeasurementCount.md +1 -1
  259. package/docs/Microsoft.Quantum.ResourceEstimation/PSSPCLayout.md +1 -1
  260. package/docs/Microsoft.Quantum.ResourceEstimation/RepeatEstimates.md +1 -1
  261. package/docs/Microsoft.Quantum.ResourceEstimation/RotationCount.md +1 -1
  262. package/docs/Microsoft.Quantum.ResourceEstimation/RotationDepth.md +1 -1
  263. package/docs/Microsoft.Quantum.ResourceEstimation/SingleVariant.md +1 -1
  264. package/docs/Microsoft.Quantum.ResourceEstimation/TCount.md +1 -1
  265. package/docs/Microsoft.Quantum.Unstable.Arithmetic/AddLE.md +1 -1
  266. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyActionIfGreaterThanOrEqualConstant.md +23 -0
  267. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyActionIfSumOverflows.md +23 -0
  268. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyAsSinglyControlled.md +24 -0
  269. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyIfEqualL.md +1 -1
  270. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyIfEqualLE.md +1 -1
  271. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyIfGreaterL.md +1 -1
  272. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyIfGreaterLE.md +1 -1
  273. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyIfGreaterOrEqualL.md +1 -1
  274. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyIfGreaterOrEqualLE.md +1 -1
  275. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyIfLessL.md +1 -1
  276. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyIfLessLE.md +1 -1
  277. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyIfLessOrEqualL.md +1 -1
  278. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ApplyIfLessOrEqualLE.md +1 -1
  279. package/docs/Microsoft.Quantum.Unstable.Arithmetic/FourierTDIncByLE.md +1 -1
  280. package/docs/Microsoft.Quantum.Unstable.Arithmetic/IncByI.md +1 -1
  281. package/docs/Microsoft.Quantum.Unstable.Arithmetic/IncByIUsingIncByLE.md +1 -1
  282. package/docs/Microsoft.Quantum.Unstable.Arithmetic/IncByL.md +1 -1
  283. package/docs/Microsoft.Quantum.Unstable.Arithmetic/IncByLE.md +1 -1
  284. package/docs/Microsoft.Quantum.Unstable.Arithmetic/IncByLEUsingAddLE.md +1 -1
  285. package/docs/Microsoft.Quantum.Unstable.Arithmetic/IncByLUsingIncByLE.md +1 -1
  286. package/docs/Microsoft.Quantum.Unstable.Arithmetic/LookAheadDKRSAddLE.md +1 -1
  287. package/docs/Microsoft.Quantum.Unstable.Arithmetic/MAJ.md +1 -1
  288. package/docs/Microsoft.Quantum.Unstable.Arithmetic/PhaseGradient.md +18 -0
  289. package/docs/Microsoft.Quantum.Unstable.Arithmetic/ReflectAboutInteger.md +1 -1
  290. package/docs/Microsoft.Quantum.Unstable.Arithmetic/RippleCarryCGAddLE.md +1 -1
  291. package/docs/Microsoft.Quantum.Unstable.Arithmetic/RippleCarryCGIncByLE.md +1 -1
  292. package/docs/Microsoft.Quantum.Unstable.Arithmetic/RippleCarryTTKIncByLE.md +1 -1
  293. package/docs/Microsoft.Quantum.Unstable.StatePreparation/ApproximatelyPreparePureStateCP.md +1 -1
  294. package/docs/Microsoft.Quantum.Unstable.StatePreparation/PreparePureStateD.md +1 -1
  295. package/docs/Microsoft.Quantum.Unstable.TableLookup/EncodeUnary.md +18 -0
  296. package/docs/Microsoft.Quantum.Unstable.TableLookup/MustBeFixed.md +18 -0
  297. package/docs/Microsoft.Quantum.Unstable.TableLookup/Select.md +1 -1
  298. package/docs/Microsoft.Quantum.Unstable.TableLookup/Unlookup.md +22 -0
  299. package/docs/Microsoft.Quantum.Unstable.TableLookup/WriteMemoryContents.md +18 -0
  300. package/docs/toc.yml +31 -1
  301. package/lib/node/qsc_wasm.cjs +162 -158
  302. package/lib/node/qsc_wasm.d.cts +73 -36
  303. package/lib/node/qsc_wasm_bg.wasm +0 -0
  304. package/lib/web/qsc_wasm.d.ts +82 -45
  305. package/lib/web/qsc_wasm.js +152 -157
  306. package/lib/web/qsc_wasm_bg.wasm +0 -0
  307. package/package.json +1 -1
  308. package/ux/estimatesOverview.tsx +2 -0
  309. package/ux/estimatesPanel.tsx +2 -0
  310. package/ux/qsharp-ux.css +30 -5
  311. package/ux/saveImage.tsx +107 -0
  312. package/ux/saveImageUtil.tsx +72 -0
  313. package/ux/scatterChart.tsx +31 -0
  314. package/docs/Microsoft.Quantum.Intrinsic/AND.md +0 -33
@@ -14,29 +14,23 @@ export function setLogLevel(level: number): void;
14
14
  */
15
15
  export function git_hash(): string;
16
16
  /**
17
- * @param {(Array<any>)[]} sources
18
- * @param {(string)[]} language_features
19
- * @param {string} profile
17
+ * @param {IProgramConfig} program
20
18
  * @returns {string}
21
19
  */
22
- export function get_qir(sources: (Array<any>)[], language_features: (string)[], profile: string): string;
20
+ export function get_qir(program: IProgramConfig): string;
23
21
  /**
24
- * @param {(Array<any>)[]} sources
22
+ * @param {IProgramConfig} program
25
23
  * @param {string} params
26
- * @param {(string)[]} language_features
27
- * @param {string} targetProfile
28
24
  * @returns {string}
29
25
  */
30
- export function get_estimates(sources: (Array<any>)[], params: string, language_features: (string)[], targetProfile: string): string;
26
+ export function get_estimates(program: IProgramConfig, params: string): string;
31
27
  /**
32
- * @param {(Array<any>)[]} sources
33
- * @param {string} targetProfile
34
- * @param {(string)[]} language_features
28
+ * @param {IProgramConfig} program
35
29
  * @param {boolean} simulate
36
30
  * @param {IOperationInfo | undefined} [operation]
37
31
  * @returns {any}
38
32
  */
39
- export function get_circuit(sources: (Array<any>)[], targetProfile: string, language_features: (string)[], simulate: boolean, operation?: IOperationInfo): any;
33
+ export function get_circuit(program: IProgramConfig, simulate: boolean, operation?: IOperationInfo): any;
40
34
  /**
41
35
  * @param {string} name
42
36
  * @returns {string | undefined}
@@ -57,15 +51,13 @@ export function get_ast(code: string, language_features: (string)[], profile: st
57
51
  */
58
52
  export function get_hir(code: string, language_features: (string)[], profile: string): string;
59
53
  /**
60
- * @param {(Array<any>)[]} sources
54
+ * @param {IProgramConfig} program
61
55
  * @param {string} expr
62
56
  * @param {Function} event_cb
63
57
  * @param {number} shots
64
- * @param {(string)[]} language_features
65
- * @param {string} profile
66
58
  * @returns {boolean}
67
59
  */
68
- export function run(sources: (Array<any>)[], expr: string, event_cb: Function, shots: number, language_features: (string)[], profile: string): boolean;
60
+ export function run(program: IProgramConfig, expr: string, event_cb: Function, shots: number): boolean;
69
61
  /**
70
62
  * @param {string} solution_code
71
63
  * @param {any} exercise_sources_js
@@ -74,12 +66,10 @@ export function run(sources: (Array<any>)[], expr: string, event_cb: Function, s
74
66
  */
75
67
  export function check_exercise_solution(solution_code: string, exercise_sources_js: any, event_cb: Function): boolean;
76
68
  /**
77
- * @param {(Array<any>)[] | undefined} [additionalSources]
78
- * @param {string | undefined} [targetProfile]
79
- * @param {(string)[] | undefined} [languageFeatures]
69
+ * @param {IProgramConfig | undefined} [additional_program]
80
70
  * @returns {(IDocFile)[]}
81
71
  */
82
- export function generate_docs(additionalSources?: (Array<any>)[], targetProfile?: string, languageFeatures?: (string)[]): (IDocFile)[];
72
+ export function generate_docs(additional_program?: IProgramConfig): (IDocFile)[];
83
73
  /**
84
74
  */
85
75
  export enum StepResultId {
@@ -264,6 +254,59 @@ export interface ILocation {
264
254
  span: IRange;
265
255
  }
266
256
 
257
+
258
+ export interface IProjectHost {
259
+ readFile(uri: string): Promise<string | null>;
260
+ listDirectory(uri: string): Promise<[string, number][]>;
261
+ resolvePath(base: string, path: string): Promise<string | null>;
262
+ fetchGithub(owner: string, repo: string, ref: string, path: string): Promise<string>;
263
+ findManifestDirectory(docUri: string): Promise<string | null>;
264
+ }
265
+
266
+ /**
267
+ * Copy of the ProgramConfig type defined in compiler.ts,
268
+ * but with all the properties required and filled in with defaults where necessary.
269
+ */
270
+ export interface IProgramConfig {
271
+ packageGraphSources: IPackageGraphSources;
272
+ profile: TargetProfile;
273
+ }
274
+
275
+
276
+
277
+ export type PackageKey = string;
278
+
279
+ export interface IPackageGraphSources {
280
+ root: IPackageInfo;
281
+ packages: Record<PackageKey,IPackageInfo>;
282
+ }
283
+
284
+
285
+
286
+ export interface IPackageInfo {
287
+ sources: [string, string][];
288
+ languageFeatures: string[];
289
+ dependencies: Record<string,string>;
290
+ packageType?: "exe" | "lib";
291
+ }
292
+
293
+ export interface IProjectConfig {
294
+ /**
295
+ * Friendly name for the project, based on the name of the Q# document or project directory
296
+ */
297
+ projectName: string;
298
+ /**
299
+ * Uri for the qsharp.json or the root source file (single file projects)
300
+ */
301
+ projectUri: string;
302
+ packageGraphSources: IPackageGraphSources;
303
+ lints: {
304
+ lint: string;
305
+ level: string;
306
+ }[];
307
+ errors: string[];
308
+ }
309
+
267
310
  export interface IDocFile {
268
311
  filename: string;
269
312
  metadata: string;
@@ -286,13 +329,11 @@ export class DebugService {
286
329
  */
287
330
  constructor();
288
331
  /**
289
- * @param {(Array<any>)[]} sources
290
- * @param {string} target_profile
291
- * @param {string | undefined} entry
292
- * @param {(string)[]} language_features
332
+ * @param {IProgramConfig} program
333
+ * @param {string | undefined} [entry]
293
334
  * @returns {string}
294
335
  */
295
- load_source(sources: (Array<any>)[], target_profile: string, entry: string | undefined, language_features: (string)[]): string;
336
+ load_program(program: IProgramConfig, entry?: string): string;
296
337
  /**
297
338
  * @returns {IQuantumStateList}
298
339
  */
@@ -348,12 +389,10 @@ export class LanguageService {
348
389
  constructor();
349
390
  /**
350
391
  * @param {(uri: string, version: number | undefined, diagnostics: VSDiagnostic[]) => void} diagnostics_callback
351
- * @param {(uri: string) => Promise<string | null>} read_file
352
- * @param {(uri: string) => Promise<[string, number][]>} list_directory
353
- * @param {(uri: string) => Promise<{ manifestDirectory: string }| null>} get_manifest
392
+ * @param {IProjectHost} host
354
393
  * @returns {Promise<any>}
355
394
  */
356
- start_background_work(diagnostics_callback: (uri: string, version: number | undefined, diagnostics: VSDiagnostic[]) => void, read_file: (uri: string) => Promise<string | null>, list_directory: (uri: string) => Promise<[string, number][]>, get_manifest: (uri: string) => Promise<{ manifestDirectory: string }| null>): Promise<any>;
395
+ start_background_work(diagnostics_callback: (uri: string, version: number | undefined, diagnostics: VSDiagnostic[]) => void, host: IProjectHost): Promise<any>;
357
396
  /**
358
397
  */
359
398
  stop_background_work(): void;
@@ -449,14 +488,12 @@ export class LanguageService {
449
488
  export class ProjectLoader {
450
489
  free(): void;
451
490
  /**
452
- * @param {(uri: string) => Promise<string | null>} read_file
453
- * @param {(uri: string) => Promise<[string, number][]>} list_directory
454
- * @param {(uri: string) => Promise<{ manifestDirectory: string }| null>} get_manifest
491
+ * @param {IProjectHost} project_host
455
492
  */
456
- constructor(read_file: (uri: string) => Promise<string | null>, list_directory: (uri: string) => Promise<[string, number][]>, get_manifest: (uri: string) => Promise<{ manifestDirectory: string }| null>);
493
+ constructor(project_host: IProjectHost);
457
494
  /**
458
- * @param {{ manifestDirectory: string }} manifest
459
- * @returns {Promise<[string, string][]>}
495
+ * @param {string} directory
496
+ * @returns {Promise<IProjectConfig>}
460
497
  */
461
- load_project(manifest: { manifestDirectory: string }): Promise<[string, string][]>;
498
+ load_project_with_deps(directory: string): Promise<IProjectConfig>;
462
499
  }
Binary file
@@ -14,29 +14,23 @@ export function setLogLevel(level: number): void;
14
14
  */
15
15
  export function git_hash(): string;
16
16
  /**
17
- * @param {(Array<any>)[]} sources
18
- * @param {(string)[]} language_features
19
- * @param {string} profile
17
+ * @param {IProgramConfig} program
20
18
  * @returns {string}
21
19
  */
22
- export function get_qir(sources: (Array<any>)[], language_features: (string)[], profile: string): string;
20
+ export function get_qir(program: IProgramConfig): string;
23
21
  /**
24
- * @param {(Array<any>)[]} sources
22
+ * @param {IProgramConfig} program
25
23
  * @param {string} params
26
- * @param {(string)[]} language_features
27
- * @param {string} targetProfile
28
24
  * @returns {string}
29
25
  */
30
- export function get_estimates(sources: (Array<any>)[], params: string, language_features: (string)[], targetProfile: string): string;
26
+ export function get_estimates(program: IProgramConfig, params: string): string;
31
27
  /**
32
- * @param {(Array<any>)[]} sources
33
- * @param {string} targetProfile
34
- * @param {(string)[]} language_features
28
+ * @param {IProgramConfig} program
35
29
  * @param {boolean} simulate
36
30
  * @param {IOperationInfo | undefined} [operation]
37
31
  * @returns {any}
38
32
  */
39
- export function get_circuit(sources: (Array<any>)[], targetProfile: string, language_features: (string)[], simulate: boolean, operation?: IOperationInfo): any;
33
+ export function get_circuit(program: IProgramConfig, simulate: boolean, operation?: IOperationInfo): any;
40
34
  /**
41
35
  * @param {string} name
42
36
  * @returns {string | undefined}
@@ -57,15 +51,13 @@ export function get_ast(code: string, language_features: (string)[], profile: st
57
51
  */
58
52
  export function get_hir(code: string, language_features: (string)[], profile: string): string;
59
53
  /**
60
- * @param {(Array<any>)[]} sources
54
+ * @param {IProgramConfig} program
61
55
  * @param {string} expr
62
56
  * @param {Function} event_cb
63
57
  * @param {number} shots
64
- * @param {(string)[]} language_features
65
- * @param {string} profile
66
58
  * @returns {boolean}
67
59
  */
68
- export function run(sources: (Array<any>)[], expr: string, event_cb: Function, shots: number, language_features: (string)[], profile: string): boolean;
60
+ export function run(program: IProgramConfig, expr: string, event_cb: Function, shots: number): boolean;
69
61
  /**
70
62
  * @param {string} solution_code
71
63
  * @param {any} exercise_sources_js
@@ -74,12 +66,10 @@ export function run(sources: (Array<any>)[], expr: string, event_cb: Function, s
74
66
  */
75
67
  export function check_exercise_solution(solution_code: string, exercise_sources_js: any, event_cb: Function): boolean;
76
68
  /**
77
- * @param {(Array<any>)[] | undefined} [additionalSources]
78
- * @param {string | undefined} [targetProfile]
79
- * @param {(string)[] | undefined} [languageFeatures]
69
+ * @param {IProgramConfig | undefined} [additional_program]
80
70
  * @returns {(IDocFile)[]}
81
71
  */
82
- export function generate_docs(additionalSources?: (Array<any>)[], targetProfile?: string, languageFeatures?: (string)[]): (IDocFile)[];
72
+ export function generate_docs(additional_program?: IProgramConfig): (IDocFile)[];
83
73
  /**
84
74
  */
85
75
  export enum StepResultId {
@@ -264,6 +254,59 @@ export interface ILocation {
264
254
  span: IRange;
265
255
  }
266
256
 
257
+
258
+ export interface IProjectHost {
259
+ readFile(uri: string): Promise<string | null>;
260
+ listDirectory(uri: string): Promise<[string, number][]>;
261
+ resolvePath(base: string, path: string): Promise<string | null>;
262
+ fetchGithub(owner: string, repo: string, ref: string, path: string): Promise<string>;
263
+ findManifestDirectory(docUri: string): Promise<string | null>;
264
+ }
265
+
266
+ /**
267
+ * Copy of the ProgramConfig type defined in compiler.ts,
268
+ * but with all the properties required and filled in with defaults where necessary.
269
+ */
270
+ export interface IProgramConfig {
271
+ packageGraphSources: IPackageGraphSources;
272
+ profile: TargetProfile;
273
+ }
274
+
275
+
276
+
277
+ export type PackageKey = string;
278
+
279
+ export interface IPackageGraphSources {
280
+ root: IPackageInfo;
281
+ packages: Record<PackageKey,IPackageInfo>;
282
+ }
283
+
284
+
285
+
286
+ export interface IPackageInfo {
287
+ sources: [string, string][];
288
+ languageFeatures: string[];
289
+ dependencies: Record<string,string>;
290
+ packageType?: "exe" | "lib";
291
+ }
292
+
293
+ export interface IProjectConfig {
294
+ /**
295
+ * Friendly name for the project, based on the name of the Q# document or project directory
296
+ */
297
+ projectName: string;
298
+ /**
299
+ * Uri for the qsharp.json or the root source file (single file projects)
300
+ */
301
+ projectUri: string;
302
+ packageGraphSources: IPackageGraphSources;
303
+ lints: {
304
+ lint: string;
305
+ level: string;
306
+ }[];
307
+ errors: string[];
308
+ }
309
+
267
310
  export interface IDocFile {
268
311
  filename: string;
269
312
  metadata: string;
@@ -286,13 +329,11 @@ export class DebugService {
286
329
  */
287
330
  constructor();
288
331
  /**
289
- * @param {(Array<any>)[]} sources
290
- * @param {string} target_profile
291
- * @param {string | undefined} entry
292
- * @param {(string)[]} language_features
332
+ * @param {IProgramConfig} program
333
+ * @param {string | undefined} [entry]
293
334
  * @returns {string}
294
335
  */
295
- load_source(sources: (Array<any>)[], target_profile: string, entry: string | undefined, language_features: (string)[]): string;
336
+ load_program(program: IProgramConfig, entry?: string): string;
296
337
  /**
297
338
  * @returns {IQuantumStateList}
298
339
  */
@@ -348,12 +389,10 @@ export class LanguageService {
348
389
  constructor();
349
390
  /**
350
391
  * @param {(uri: string, version: number | undefined, diagnostics: VSDiagnostic[]) => void} diagnostics_callback
351
- * @param {(uri: string) => Promise<string | null>} read_file
352
- * @param {(uri: string) => Promise<[string, number][]>} list_directory
353
- * @param {(uri: string) => Promise<{ manifestDirectory: string }| null>} get_manifest
392
+ * @param {IProjectHost} host
354
393
  * @returns {Promise<any>}
355
394
  */
356
- start_background_work(diagnostics_callback: (uri: string, version: number | undefined, diagnostics: VSDiagnostic[]) => void, read_file: (uri: string) => Promise<string | null>, list_directory: (uri: string) => Promise<[string, number][]>, get_manifest: (uri: string) => Promise<{ manifestDirectory: string }| null>): Promise<any>;
395
+ start_background_work(diagnostics_callback: (uri: string, version: number | undefined, diagnostics: VSDiagnostic[]) => void, host: IProjectHost): Promise<any>;
357
396
  /**
358
397
  */
359
398
  stop_background_work(): void;
@@ -449,16 +488,14 @@ export class LanguageService {
449
488
  export class ProjectLoader {
450
489
  free(): void;
451
490
  /**
452
- * @param {(uri: string) => Promise<string | null>} read_file
453
- * @param {(uri: string) => Promise<[string, number][]>} list_directory
454
- * @param {(uri: string) => Promise<{ manifestDirectory: string }| null>} get_manifest
491
+ * @param {IProjectHost} project_host
455
492
  */
456
- constructor(read_file: (uri: string) => Promise<string | null>, list_directory: (uri: string) => Promise<[string, number][]>, get_manifest: (uri: string) => Promise<{ manifestDirectory: string }| null>);
493
+ constructor(project_host: IProjectHost);
457
494
  /**
458
- * @param {{ manifestDirectory: string }} manifest
459
- * @returns {Promise<[string, string][]>}
495
+ * @param {string} directory
496
+ * @returns {Promise<IProjectConfig>}
460
497
  */
461
- load_project(manifest: { manifestDirectory: string }): Promise<[string, string][]>;
498
+ load_project_with_deps(directory: string): Promise<IProjectConfig>;
462
499
  }
463
500
 
464
501
  export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
@@ -467,7 +504,7 @@ export interface InitOutput {
467
504
  readonly memory: WebAssembly.Memory;
468
505
  readonly __wbg_debugservice_free: (a: number) => void;
469
506
  readonly debugservice_new: () => number;
470
- readonly debugservice_load_source: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => void;
507
+ readonly debugservice_load_program: (a: number, b: number, c: number, d: number, e: number) => void;
471
508
  readonly debugservice_capture_quantum_state: (a: number) => number;
472
509
  readonly debugservice_get_circuit: (a: number, b: number) => void;
473
510
  readonly debugservice_get_stack_frames: (a: number) => number;
@@ -479,7 +516,7 @@ export interface InitOutput {
479
516
  readonly debugservice_get_locals: (a: number) => number;
480
517
  readonly __wbg_languageservice_free: (a: number) => void;
481
518
  readonly languageservice_new: () => number;
482
- readonly languageservice_start_background_work: (a: number, b: number, c: number, d: number, e: number) => number;
519
+ readonly languageservice_start_background_work: (a: number, b: number, c: number) => number;
483
520
  readonly languageservice_stop_background_work: (a: number) => void;
484
521
  readonly languageservice_update_configuration: (a: number, b: number) => void;
485
522
  readonly languageservice_update_document: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
@@ -499,18 +536,18 @@ export interface InitOutput {
499
536
  readonly initLogging: (a: number, b: number, c: number) => void;
500
537
  readonly setLogLevel: (a: number) => void;
501
538
  readonly __wbg_projectloader_free: (a: number) => void;
502
- readonly projectloader_new: (a: number, b: number, c: number) => number;
503
- readonly projectloader_load_project: (a: number, b: number) => number;
539
+ readonly projectloader_new: (a: number) => number;
540
+ readonly projectloader_load_project_with_deps: (a: number, b: number, c: number) => number;
504
541
  readonly git_hash: (a: number) => void;
505
- readonly get_qir: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
506
- readonly get_estimates: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => void;
507
- readonly get_circuit: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => void;
542
+ readonly get_qir: (a: number, b: number) => void;
543
+ readonly get_estimates: (a: number, b: number, c: number, d: number) => void;
544
+ readonly get_circuit: (a: number, b: number, c: number, d: number) => void;
508
545
  readonly get_library_source_content: (a: number, b: number, c: number) => void;
509
546
  readonly get_ast: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
510
547
  readonly get_hir: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
511
- readonly run: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number) => void;
548
+ readonly run: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
512
549
  readonly check_exercise_solution: (a: number, b: number, c: number, d: number) => number;
513
- readonly generate_docs: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
550
+ readonly generate_docs: (a: number, b: number) => void;
514
551
  readonly __wbindgen_export_0: (a: number, b: number) => number;
515
552
  readonly __wbindgen_export_1: (a: number, b: number, c: number, d: number) => number;
516
553
  readonly __wbindgen_export_2: WebAssembly.Table;