qsharp-lang 1.27.4-dev → 1.28.0
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.
- package/README.md +3 -5
- package/dist/browser.d.ts +1 -0
- package/dist/browser.js +5 -0
- package/dist/compiler/worker.js +0 -1
- package/dist/debug-service/worker.js +0 -1
- package/dist/language-service/worker.js +0 -1
- package/dist/main.d.ts +4 -4
- package/dist/main.js +4 -8
- package/dist/node.js +2 -7
- package/dist/workers/adapters/browser.d.ts +9 -0
- package/dist/workers/adapters/browser.js +32 -0
- package/dist/workers/adapters/node.d.ts +9 -0
- package/dist/workers/adapters/node.js +34 -0
- package/dist/workers/adapters/types.d.ts +14 -0
- package/dist/workers/adapters/types.js +3 -0
- package/dist/workers/main.d.ts +3 -3
- package/dist/workers/main.js +5 -10
- package/dist/workers/worker.d.ts +4 -3
- package/dist/workers/worker.js +8 -6
- package/docs/Microsoft.Quantum.Core/IsRangeEmpty.md +1 -1
- package/docs/Microsoft.Quantum.Core/Length.md +1 -1
- package/docs/Microsoft.Quantum.Core/RangeEnd.md +1 -1
- package/docs/Microsoft.Quantum.Core/RangeStart.md +1 -1
- package/docs/Microsoft.Quantum.Core/Repeated.md +1 -1
- package/docs/Microsoft.Quantum.Core/index.md +1 -1
- package/docs/Std.Arithmetic/AddLE.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfEqualL.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfEqualLE.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfGreaterL.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfGreaterLE.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfGreaterOrEqualL.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfGreaterOrEqualLE.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfLessL.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfLessLE.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfLessOrEqualL.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfLessOrEqualLE.md +1 -1
- package/docs/Std.Arithmetic/FourierTDIncByLE.md +1 -1
- package/docs/Std.Arithmetic/IncByI.md +1 -1
- package/docs/Std.Arithmetic/IncByIUsingIncByLE.md +1 -1
- package/docs/Std.Arithmetic/IncByL.md +1 -1
- package/docs/Std.Arithmetic/IncByLE.md +1 -1
- package/docs/Std.Arithmetic/IncByLEUsingAddLE.md +1 -1
- package/docs/Std.Arithmetic/IncByLUsingIncByLE.md +1 -1
- package/docs/Std.Arithmetic/LookAheadDKRSAddLE.md +1 -1
- package/docs/Std.Arithmetic/MAJ.md +1 -1
- package/docs/Std.Arithmetic/ReflectAboutInteger.md +1 -1
- package/docs/Std.Arithmetic/RippleCarryCGAddLE.md +1 -1
- package/docs/Std.Arithmetic/RippleCarryCGIncByLE.md +1 -1
- package/docs/Std.Arithmetic/RippleCarryTTKIncByLE.md +1 -1
- package/docs/Std.Arithmetic/index.md +1 -1
- package/docs/Std.Arrays/All.md +1 -1
- package/docs/Std.Arrays/Any.md +1 -1
- package/docs/Std.Arrays/Chunks.md +1 -1
- package/docs/Std.Arrays/CircularlyShifted.md +1 -1
- package/docs/Std.Arrays/ColumnAt.md +1 -1
- package/docs/Std.Arrays/Count.md +1 -1
- package/docs/Std.Arrays/Diagonal.md +1 -1
- package/docs/Std.Arrays/DrawMany.md +1 -1
- package/docs/Std.Arrays/Enumerated.md +1 -1
- package/docs/Std.Arrays/Excluding.md +1 -1
- package/docs/Std.Arrays/Filtered.md +1 -1
- package/docs/Std.Arrays/FlatMapped.md +1 -1
- package/docs/Std.Arrays/Flattened.md +1 -1
- package/docs/Std.Arrays/Fold.md +1 -1
- package/docs/Std.Arrays/ForEach.md +1 -1
- package/docs/Std.Arrays/Head.md +1 -1
- package/docs/Std.Arrays/HeadAndRest.md +1 -1
- package/docs/Std.Arrays/IndexOf.md +1 -1
- package/docs/Std.Arrays/IndexRange.md +1 -1
- package/docs/Std.Arrays/Interleaved.md +1 -1
- package/docs/Std.Arrays/IsEmpty.md +1 -1
- package/docs/Std.Arrays/IsRectangularArray.md +1 -1
- package/docs/Std.Arrays/IsSorted.md +1 -1
- package/docs/Std.Arrays/IsSquareArray.md +1 -1
- package/docs/Std.Arrays/Mapped.md +1 -1
- package/docs/Std.Arrays/MappedByIndex.md +1 -1
- package/docs/Std.Arrays/MappedOverRange.md +1 -1
- package/docs/Std.Arrays/Most.md +1 -1
- package/docs/Std.Arrays/MostAndTail.md +1 -1
- package/docs/Std.Arrays/Padded.md +1 -1
- package/docs/Std.Arrays/Partitioned.md +1 -1
- package/docs/Std.Arrays/Rest.md +1 -1
- package/docs/Std.Arrays/Reversed.md +1 -1
- package/docs/Std.Arrays/SequenceI.md +1 -1
- package/docs/Std.Arrays/SequenceL.md +1 -1
- package/docs/Std.Arrays/Sorted.md +1 -1
- package/docs/Std.Arrays/Subarray.md +1 -1
- package/docs/Std.Arrays/Swapped.md +1 -1
- package/docs/Std.Arrays/Tail.md +1 -1
- package/docs/Std.Arrays/Transposed.md +1 -1
- package/docs/Std.Arrays/Unzipped.md +1 -1
- package/docs/Std.Arrays/Where.md +1 -1
- package/docs/Std.Arrays/Windows.md +1 -1
- package/docs/Std.Arrays/Zipped.md +1 -1
- package/docs/Std.Arrays/index.md +1 -1
- package/docs/Std.Canon/ApplyCNOTChain.md +1 -1
- package/docs/Std.Canon/ApplyControlledOnBitString.md +1 -1
- package/docs/Std.Canon/ApplyControlledOnInt.md +1 -1
- package/docs/Std.Canon/ApplyOperationPowerA.md +1 -1
- package/docs/Std.Canon/ApplyOperationPowerCA.md +1 -1
- package/docs/Std.Canon/ApplyP.md +1 -1
- package/docs/Std.Canon/ApplyPauli.md +1 -1
- package/docs/Std.Canon/ApplyPauliFromBitString.md +1 -1
- package/docs/Std.Canon/ApplyPauliFromInt.md +1 -1
- package/docs/Std.Canon/ApplyQFT.md +1 -1
- package/docs/Std.Canon/ApplyQPE.md +1 -1
- package/docs/Std.Canon/ApplyToEach.md +1 -1
- package/docs/Std.Canon/ApplyToEachA.md +1 -1
- package/docs/Std.Canon/ApplyToEachC.md +1 -1
- package/docs/Std.Canon/ApplyToEachCA.md +1 -1
- package/docs/Std.Canon/ApplyXorInPlace.md +1 -1
- package/docs/Std.Canon/ApplyXorInPlaceL.md +1 -1
- package/docs/Std.Canon/CX.md +1 -1
- package/docs/Std.Canon/CY.md +1 -1
- package/docs/Std.Canon/CZ.md +1 -1
- package/docs/Std.Canon/Fst.md +1 -1
- package/docs/Std.Canon/MapPauliAxis.md +1 -1
- package/docs/Std.Canon/Relabel.md +1 -1
- package/docs/Std.Canon/Snd.md +1 -1
- package/docs/Std.Canon/SwapReverseRegister.md +1 -1
- package/docs/Std.Canon/index.md +1 -1
- package/docs/Std.Convert/BigIntAsBoolArray.md +1 -1
- package/docs/Std.Convert/BigIntAsInt.md +1 -1
- package/docs/Std.Convert/BoolArrayAsBigInt.md +1 -1
- package/docs/Std.Convert/BoolArrayAsInt.md +1 -1
- package/docs/Std.Convert/BoolArrayAsResultArray.md +1 -1
- package/docs/Std.Convert/BoolAsResult.md +1 -1
- package/docs/Std.Convert/ComplexAsComplexPolar.md +1 -1
- package/docs/Std.Convert/ComplexPolarAsComplex.md +1 -1
- package/docs/Std.Convert/DoubleAsStringWithPrecision.md +1 -1
- package/docs/Std.Convert/IntAsBigInt.md +1 -1
- package/docs/Std.Convert/IntAsBoolArray.md +1 -1
- package/docs/Std.Convert/IntAsDouble.md +1 -1
- package/docs/Std.Convert/ResultArrayAsBoolArray.md +1 -1
- package/docs/Std.Convert/ResultArrayAsInt.md +1 -1
- package/docs/Std.Convert/ResultAsBool.md +1 -1
- package/docs/Std.Convert/index.md +1 -1
- package/docs/Std.Core/Complex.md +1 -1
- package/docs/Std.Core/Length.md +1 -1
- package/docs/Std.Core/Repeated.md +1 -1
- package/docs/Std.Core/index.md +1 -1
- package/docs/Std.Diagnostics/ApplyIdleNoise.md +1 -1
- package/docs/Std.Diagnostics/BitFlipNoise.md +1 -1
- package/docs/Std.Diagnostics/CheckAllZero.md +1 -1
- package/docs/Std.Diagnostics/CheckOperationsAreEqual.md +1 -1
- package/docs/Std.Diagnostics/CheckZero.md +1 -1
- package/docs/Std.Diagnostics/ConfigurePauliNoise.md +1 -1
- package/docs/Std.Diagnostics/ConfigureQubitLoss.md +1 -1
- package/docs/Std.Diagnostics/DepolarizingNoise.md +1 -1
- package/docs/Std.Diagnostics/DumpMachine.md +1 -1
- package/docs/Std.Diagnostics/DumpOperation.md +1 -1
- package/docs/Std.Diagnostics/DumpRegister.md +1 -1
- package/docs/Std.Diagnostics/Fact.md +1 -1
- package/docs/Std.Diagnostics/NoNoise.md +1 -1
- package/docs/Std.Diagnostics/PhaseFlipNoise.md +1 -1
- package/docs/Std.Diagnostics/PostSelectZ.md +1 -1
- package/docs/Std.Diagnostics/StartCountingFunction.md +1 -1
- package/docs/Std.Diagnostics/StartCountingOperation.md +1 -1
- package/docs/Std.Diagnostics/StartCountingQubits.md +1 -1
- package/docs/Std.Diagnostics/StopCountingFunction.md +1 -1
- package/docs/Std.Diagnostics/StopCountingOperation.md +1 -1
- package/docs/Std.Diagnostics/StopCountingQubits.md +1 -1
- package/docs/Std.Diagnostics/index.md +1 -1
- package/docs/Std.Intrinsic/AND.md +1 -1
- package/docs/Std.Intrinsic/ApplyUnitary.md +1 -1
- package/docs/Std.Intrinsic/CCNOT.md +1 -1
- package/docs/Std.Intrinsic/CNOT.md +1 -1
- package/docs/Std.Intrinsic/Exp.md +1 -1
- package/docs/Std.Intrinsic/H.md +1 -1
- package/docs/Std.Intrinsic/I.md +1 -1
- package/docs/Std.Intrinsic/M.md +1 -1
- package/docs/Std.Intrinsic/Measure.md +1 -1
- package/docs/Std.Intrinsic/Message.md +1 -1
- package/docs/Std.Intrinsic/R.md +1 -1
- package/docs/Std.Intrinsic/R1.md +1 -1
- package/docs/Std.Intrinsic/R1Frac.md +1 -1
- package/docs/Std.Intrinsic/RFrac.md +1 -1
- package/docs/Std.Intrinsic/Reset.md +1 -1
- package/docs/Std.Intrinsic/ResetAll.md +1 -1
- package/docs/Std.Intrinsic/Rx.md +1 -1
- package/docs/Std.Intrinsic/Rxx.md +1 -1
- package/docs/Std.Intrinsic/Ry.md +1 -1
- package/docs/Std.Intrinsic/Ryy.md +1 -1
- package/docs/Std.Intrinsic/Rz.md +1 -1
- package/docs/Std.Intrinsic/Rzz.md +1 -1
- package/docs/Std.Intrinsic/S.md +1 -1
- package/docs/Std.Intrinsic/SWAP.md +1 -1
- package/docs/Std.Intrinsic/SX.md +1 -1
- package/docs/Std.Intrinsic/T.md +1 -1
- package/docs/Std.Intrinsic/X.md +1 -1
- package/docs/Std.Intrinsic/Y.md +1 -1
- package/docs/Std.Intrinsic/Z.md +1 -1
- package/docs/Std.Intrinsic/index.md +1 -1
- package/docs/Std.Logical/Xor.md +1 -1
- package/docs/Std.Logical/index.md +1 -1
- package/docs/Std.Math/AbsComplex.md +1 -1
- package/docs/Std.Math/AbsComplexPolar.md +1 -1
- package/docs/Std.Math/AbsD.md +1 -1
- package/docs/Std.Math/AbsI.md +1 -1
- package/docs/Std.Math/AbsL.md +1 -1
- package/docs/Std.Math/AbsSquaredComplex.md +1 -1
- package/docs/Std.Math/AbsSquaredComplexPolar.md +1 -1
- package/docs/Std.Math/ApproximateFactorial.md +1 -1
- package/docs/Std.Math/ArcCos.md +1 -1
- package/docs/Std.Math/ArcCosh.md +1 -1
- package/docs/Std.Math/ArcSin.md +1 -1
- package/docs/Std.Math/ArcSinh.md +1 -1
- package/docs/Std.Math/ArcTan.md +1 -1
- package/docs/Std.Math/ArcTan2.md +1 -1
- package/docs/Std.Math/ArcTanh.md +1 -1
- package/docs/Std.Math/ArgComplex.md +1 -1
- package/docs/Std.Math/ArgComplexPolar.md +1 -1
- package/docs/Std.Math/Binom.md +1 -1
- package/docs/Std.Math/BitSizeI.md +1 -1
- package/docs/Std.Math/BitSizeL.md +1 -1
- package/docs/Std.Math/Ceiling.md +1 -1
- package/docs/Std.Math/Complex.md +1 -1
- package/docs/Std.Math/ComplexPolar.md +1 -1
- package/docs/Std.Math/ContinuedFractionConvergentI.md +1 -1
- package/docs/Std.Math/ContinuedFractionConvergentL.md +1 -1
- package/docs/Std.Math/Cos.md +1 -1
- package/docs/Std.Math/Cosh.md +1 -1
- package/docs/Std.Math/DivRemI.md +1 -1
- package/docs/Std.Math/DivRemL.md +1 -1
- package/docs/Std.Math/DividedByC.md +1 -1
- package/docs/Std.Math/DividedByCP.md +1 -1
- package/docs/Std.Math/E.md +1 -1
- package/docs/Std.Math/ExpModI.md +1 -1
- package/docs/Std.Math/ExpModL.md +1 -1
- package/docs/Std.Math/ExtendedGreatestCommonDivisorI.md +1 -1
- package/docs/Std.Math/ExtendedGreatestCommonDivisorL.md +1 -1
- package/docs/Std.Math/FactorialI.md +1 -1
- package/docs/Std.Math/FactorialL.md +1 -1
- package/docs/Std.Math/Floor.md +1 -1
- package/docs/Std.Math/GreatestCommonDivisorI.md +1 -1
- package/docs/Std.Math/GreatestCommonDivisorL.md +1 -1
- package/docs/Std.Math/HammingWeightI.md +1 -1
- package/docs/Std.Math/InverseModI.md +1 -1
- package/docs/Std.Math/InverseModL.md +1 -1
- package/docs/Std.Math/IsCoprimeI.md +1 -1
- package/docs/Std.Math/IsCoprimeL.md +1 -1
- package/docs/Std.Math/IsInfinite.md +1 -1
- package/docs/Std.Math/IsNaN.md +1 -1
- package/docs/Std.Math/LargestFixedPoint.md +1 -1
- package/docs/Std.Math/Lg.md +1 -1
- package/docs/Std.Math/Log.md +1 -1
- package/docs/Std.Math/Log10.md +1 -1
- package/docs/Std.Math/LogFactorialD.md +1 -1
- package/docs/Std.Math/LogGammaD.md +1 -1
- package/docs/Std.Math/LogOf2.md +1 -1
- package/docs/Std.Math/Max.md +1 -1
- package/docs/Std.Math/MaxD.md +1 -1
- package/docs/Std.Math/MaxI.md +1 -1
- package/docs/Std.Math/MaxL.md +1 -1
- package/docs/Std.Math/Min.md +1 -1
- package/docs/Std.Math/MinD.md +1 -1
- package/docs/Std.Math/MinI.md +1 -1
- package/docs/Std.Math/MinL.md +1 -1
- package/docs/Std.Math/MinusC.md +1 -1
- package/docs/Std.Math/MinusCP.md +1 -1
- package/docs/Std.Math/ModulusI.md +1 -1
- package/docs/Std.Math/ModulusL.md +1 -1
- package/docs/Std.Math/NegationC.md +1 -1
- package/docs/Std.Math/NegationCP.md +1 -1
- package/docs/Std.Math/PI.md +1 -1
- package/docs/Std.Math/PNorm.md +1 -1
- package/docs/Std.Math/PNormalized.md +1 -1
- package/docs/Std.Math/PlusC.md +1 -1
- package/docs/Std.Math/PlusCP.md +1 -1
- package/docs/Std.Math/PowC.md +1 -1
- package/docs/Std.Math/PowCP.md +1 -1
- package/docs/Std.Math/RealMod.md +1 -1
- package/docs/Std.Math/Round.md +1 -1
- package/docs/Std.Math/RoundHalfAwayFromZero.md +1 -1
- package/docs/Std.Math/SignD.md +1 -1
- package/docs/Std.Math/SignI.md +1 -1
- package/docs/Std.Math/SignL.md +1 -1
- package/docs/Std.Math/Sin.md +1 -1
- package/docs/Std.Math/Sinh.md +1 -1
- package/docs/Std.Math/SmallestFixedPoint.md +1 -1
- package/docs/Std.Math/Sqrt.md +1 -1
- package/docs/Std.Math/SquaredNorm.md +1 -1
- package/docs/Std.Math/Tan.md +1 -1
- package/docs/Std.Math/Tanh.md +1 -1
- package/docs/Std.Math/TimesC.md +1 -1
- package/docs/Std.Math/TimesCP.md +1 -1
- package/docs/Std.Math/TrailingZeroCountI.md +1 -1
- package/docs/Std.Math/TrailingZeroCountL.md +1 -1
- package/docs/Std.Math/Truncate.md +1 -1
- package/docs/Std.Math/index.md +1 -1
- package/docs/Std.Measurement/IsLossResult.md +1 -1
- package/docs/Std.Measurement/MResetEachZ.md +1 -1
- package/docs/Std.Measurement/MResetX.md +1 -1
- package/docs/Std.Measurement/MResetY.md +1 -1
- package/docs/Std.Measurement/MResetZ.md +1 -1
- package/docs/Std.Measurement/MResetZChecked.md +1 -1
- package/docs/Std.Measurement/MeasureAllZ.md +1 -1
- package/docs/Std.Measurement/MeasureEachZ.md +1 -1
- package/docs/Std.Measurement/MeasureInteger.md +1 -1
- package/docs/Std.Measurement/index.md +1 -1
- package/docs/Std.Random/DrawRandomBool.md +1 -1
- package/docs/Std.Random/DrawRandomDouble.md +1 -1
- package/docs/Std.Random/DrawRandomInt.md +1 -1
- package/docs/Std.Random/index.md +1 -1
- package/docs/Std.Range/IsRangeEmpty.md +1 -1
- package/docs/Std.Range/RangeEnd.md +1 -1
- package/docs/Std.Range/RangeReverse.md +1 -1
- package/docs/Std.Range/RangeStart.md +1 -1
- package/docs/Std.Range/RangeStep.md +1 -1
- package/docs/Std.Range/index.md +1 -1
- package/docs/Std.ResourceEstimation/AccountForEstimates.md +1 -1
- package/docs/Std.ResourceEstimation/AuxQubitCount.md +1 -1
- package/docs/Std.ResourceEstimation/BeginEstimateCaching.md +1 -1
- package/docs/Std.ResourceEstimation/BeginRepeatEstimates.md +1 -1
- package/docs/Std.ResourceEstimation/CczCount.md +1 -1
- package/docs/Std.ResourceEstimation/EnableMemoryComputeArchitecture.md +1 -1
- package/docs/Std.ResourceEstimation/EndEstimateCaching.md +1 -1
- package/docs/Std.ResourceEstimation/EndRepeatEstimates.md +1 -1
- package/docs/Std.ResourceEstimation/LeastFrequentlyUsed.md +1 -1
- package/docs/Std.ResourceEstimation/LeastRecentlyUsed.md +1 -1
- package/docs/Std.ResourceEstimation/MeasurementCount.md +1 -1
- package/docs/Std.ResourceEstimation/PSSPCLayout.md +1 -1
- package/docs/Std.ResourceEstimation/RepeatEstimates.md +1 -1
- package/docs/Std.ResourceEstimation/RotationCount.md +1 -1
- package/docs/Std.ResourceEstimation/RotationDepth.md +1 -1
- package/docs/Std.ResourceEstimation/SingleVariant.md +1 -1
- package/docs/Std.ResourceEstimation/TCount.md +1 -1
- package/docs/Std.ResourceEstimation/index.md +1 -1
- package/docs/Std.StatePreparation/ApproximatelyPreparePureStateCP.md +1 -1
- package/docs/Std.StatePreparation/PreparePureStateD.md +1 -1
- package/docs/Std.StatePreparation/PrepareUniformSuperposition.md +1 -1
- package/docs/Std.StatePreparation/index.md +1 -1
- package/docs/Std.TableLookup/Select.md +1 -1
- package/docs/Std.TableLookup/index.md +1 -1
- package/docs/index.md +1 -1
- package/lib/web/qsc_wasm.d.ts +3 -3
- package/lib/web/qsc_wasm.js +7 -7
- package/lib/web/qsc_wasm_bg.wasm +0 -0
- package/package.json +3 -6
- package/ux/entanglement.tsx +1044 -0
- package/ux/estimatesPanel.tsx +6 -0
- package/ux/index.ts +1 -0
- package/ux/qdk-theme.css +16 -2
package/README.md
CHANGED
|
@@ -11,11 +11,9 @@ to it when calling the `loadWasmModule` method so it may be located and loaded.
|
|
|
11
11
|
|
|
12
12
|
## Node and browser support
|
|
13
13
|
|
|
14
|
-
This package
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
dependencies (such as the `web-worker` package) are resolved correctly for the
|
|
18
|
-
runtime environment.
|
|
14
|
+
This package provides separate entry points for browser (`browser.ts`) and Node.js (`node.ts`)
|
|
15
|
+
environments. Each entry point handles platform-specific setup before re-exporting the
|
|
16
|
+
shared API from `main.ts`. The public API is the same regardless of the runtime.
|
|
19
17
|
|
|
20
18
|
## Design
|
|
21
19
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./main.js";
|
package/dist/browser.js
ADDED
package/dist/compiler/worker.js
CHANGED
|
@@ -4,4 +4,3 @@ import { createWorker } from "../workers/worker.js";
|
|
|
4
4
|
import { debugServiceProtocol } from "./debug-service.js";
|
|
5
5
|
// message handler exported for backwards compatibility
|
|
6
6
|
export const messageHandler = createWorker(debugServiceProtocol);
|
|
7
|
-
addEventListener("message", messageHandler);
|
|
@@ -4,4 +4,3 @@ import { createWorker } from "../workers/worker.js";
|
|
|
4
4
|
import { languageServiceProtocol } from "./language-service.js";
|
|
5
5
|
// message handler exported for backwards compatibility
|
|
6
6
|
export const messageHandler = createWorker(languageServiceProtocol);
|
|
7
|
-
addEventListener("message", messageHandler);
|
package/dist/main.d.ts
CHANGED
|
@@ -4,18 +4,18 @@ import { ICompiler, ICompilerWorker } from "./compiler/compiler.js";
|
|
|
4
4
|
import { IDebugService, IDebugServiceWorker } from "./debug-service/debug-service.js";
|
|
5
5
|
import { ILanguageService, ILanguageServiceWorker } from "./language-service/language-service.js";
|
|
6
6
|
import { ProjectLoader } from "./project.js";
|
|
7
|
-
|
|
7
|
+
import { IWorkerHost } from "./workers/adapters/types.js";
|
|
8
8
|
export declare function getWasmModule(): WebAssembly.Module;
|
|
9
9
|
export declare function loadWasmModule(uriOrBuffer: string | ArrayBuffer): Promise<void>;
|
|
10
10
|
export declare function instantiateWasm(): Promise<void>;
|
|
11
11
|
export declare function getLibrarySourceContent(path: string): Promise<string | undefined>;
|
|
12
12
|
export declare function getDebugService(): Promise<IDebugService>;
|
|
13
13
|
export declare function getProjectLoader(host: IProjectHost): Promise<ProjectLoader>;
|
|
14
|
-
export declare function getDebugServiceWorker(worker: string |
|
|
14
|
+
export declare function getDebugServiceWorker(worker: string | IWorkerHost): IDebugServiceWorker;
|
|
15
15
|
export declare function getCompiler(): Promise<ICompiler>;
|
|
16
|
-
export declare function getCompilerWorker(worker: string |
|
|
16
|
+
export declare function getCompilerWorker(worker: string | IWorkerHost): ICompilerWorker;
|
|
17
17
|
export declare function getLanguageService(host?: IProjectHost): Promise<ILanguageService>;
|
|
18
|
-
export declare function getLanguageServiceWorker(worker: string |
|
|
18
|
+
export declare function getLanguageServiceWorker(worker: string | IWorkerHost): ILanguageServiceWorker;
|
|
19
19
|
export declare function getTargetProfileFromEntryPoint(fileName: string, source: string): Promise<wasm.TargetProfile | undefined>;
|
|
20
20
|
export { StepResultId } from "../lib/web/qsc_wasm.js";
|
|
21
21
|
export type { IBreakpointSpan, ICodeAction, ICodeLens, IDocFile, ILocation, IOperationInfo, IPosition, IProjectConfig, IProjectHost, IQSharpError, IRange, IStackFrame, IStructStepResult, ITestDescriptor, IWorkspaceEdit, VSDiagnostic, } from "../lib/web/qsc_wasm.js";
|
package/dist/main.js
CHANGED
|
@@ -10,10 +10,6 @@ import { QSharpLanguageService, languageServiceProtocol, } from "./language-serv
|
|
|
10
10
|
import { log } from "./log.js";
|
|
11
11
|
import { ProjectLoader } from "./project.js";
|
|
12
12
|
import { createProxy } from "./workers/main.js";
|
|
13
|
-
let workerType = "classic";
|
|
14
|
-
export function setWorkerType(type) {
|
|
15
|
-
workerType = type;
|
|
16
|
-
}
|
|
17
13
|
// Create once. A module is stateless and can be efficiently passed to WebWorkers.
|
|
18
14
|
let wasmModule = null;
|
|
19
15
|
let wasmModulePromise = null;
|
|
@@ -92,7 +88,7 @@ export async function getProjectLoader(host) {
|
|
|
92
88
|
export function getDebugServiceWorker(worker) {
|
|
93
89
|
if (!wasmModule)
|
|
94
90
|
throw "Wasm module must be loaded first";
|
|
95
|
-
return createProxy(worker, wasmModule, debugServiceProtocol
|
|
91
|
+
return createProxy(worker, wasmModule, debugServiceProtocol);
|
|
96
92
|
}
|
|
97
93
|
export async function getCompiler() {
|
|
98
94
|
await instantiateWasm();
|
|
@@ -104,19 +100,19 @@ export async function getCompiler() {
|
|
|
104
100
|
export function getCompilerWorker(worker) {
|
|
105
101
|
if (!wasmModule)
|
|
106
102
|
throw "Wasm module must be loaded first";
|
|
107
|
-
return createProxy(worker, wasmModule, compilerProtocol
|
|
103
|
+
return createProxy(worker, wasmModule, compilerProtocol);
|
|
108
104
|
}
|
|
109
105
|
export async function getLanguageService(host) {
|
|
110
106
|
await instantiateWasm();
|
|
111
107
|
return new QSharpLanguageService(wasm, host);
|
|
112
108
|
}
|
|
113
|
-
// Create the
|
|
109
|
+
// Create the language service inside a WebWorker and proxy requests.
|
|
114
110
|
// If the Worker was already created via other means and is ready to receive
|
|
115
111
|
// messages, then the worker may be passed in and it will be initialized.
|
|
116
112
|
export function getLanguageServiceWorker(worker) {
|
|
117
113
|
if (!wasmModule)
|
|
118
114
|
throw "Wasm module must be loaded first";
|
|
119
|
-
return createProxy(worker, wasmModule, languageServiceProtocol
|
|
115
|
+
return createProxy(worker, wasmModule, languageServiceProtocol);
|
|
120
116
|
}
|
|
121
117
|
/// Extracts the target profile from a Q# source file's entry point.
|
|
122
118
|
/// Scans the provided source code for an EntryPoint argument specifying
|
package/dist/node.js
CHANGED
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
|
2
2
|
// Licensed under the MIT License.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { setWorkerType } from "./main.js";
|
|
6
|
-
if (typeof globalThis.Worker === "undefined") {
|
|
7
|
-
globalThis.Worker = worker;
|
|
8
|
-
}
|
|
9
|
-
setWorkerType("module");
|
|
3
|
+
import { NodeWorkerHost } from "./workers/adapters/node.js";
|
|
4
|
+
globalThis.WorkerHost = NodeWorkerHost;
|
|
10
5
|
export * from "./main.js";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IWorkerHost } from "./types.js";
|
|
2
|
+
export declare class BrowserWorkerHost implements IWorkerHost {
|
|
3
|
+
private worker;
|
|
4
|
+
constructor(url: string | URL);
|
|
5
|
+
postMessage(msg: unknown): void;
|
|
6
|
+
onMessage(handler: (e: MessageEvent) => void): void;
|
|
7
|
+
onError(handler: (e: Event) => void): void;
|
|
8
|
+
terminate(): void;
|
|
9
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT License.
|
|
3
|
+
export class BrowserWorkerHost {
|
|
4
|
+
worker;
|
|
5
|
+
constructor(url) {
|
|
6
|
+
// Resolve to an absolute URL because importScripts inside a blob worker
|
|
7
|
+
// cannot resolve relative URLs (there is no base URL to resolve against).
|
|
8
|
+
// Note: import.meta.url is replaced with document.URL by the bundler.
|
|
9
|
+
const scriptUrl = typeof url === "string" ? new URL(url, import.meta.url).href : url.href;
|
|
10
|
+
const bootstrap = `
|
|
11
|
+
self.WorkerSelf = {
|
|
12
|
+
postMessage(msg) { self.postMessage(msg); },
|
|
13
|
+
onMessage(handler) { self.addEventListener("message", handler); }
|
|
14
|
+
};
|
|
15
|
+
importScripts("${scriptUrl}");
|
|
16
|
+
`;
|
|
17
|
+
const blob = new Blob([bootstrap], { type: "application/javascript" });
|
|
18
|
+
this.worker = new Worker(URL.createObjectURL(blob));
|
|
19
|
+
}
|
|
20
|
+
postMessage(msg) {
|
|
21
|
+
this.worker.postMessage(msg);
|
|
22
|
+
}
|
|
23
|
+
onMessage(handler) {
|
|
24
|
+
this.worker.onmessage = handler;
|
|
25
|
+
}
|
|
26
|
+
onError(handler) {
|
|
27
|
+
this.worker.onerror = handler;
|
|
28
|
+
}
|
|
29
|
+
terminate() {
|
|
30
|
+
this.worker.terminate();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IWorkerHost } from "./types.js";
|
|
2
|
+
export declare class NodeWorkerHost implements IWorkerHost {
|
|
3
|
+
private worker;
|
|
4
|
+
constructor(url: string | URL);
|
|
5
|
+
postMessage(msg: unknown): void;
|
|
6
|
+
onMessage(handler: (e: MessageEvent) => void): void;
|
|
7
|
+
onError(handler: (e: Event) => void): void;
|
|
8
|
+
terminate(): void;
|
|
9
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT License.
|
|
3
|
+
import { Worker } from "node:worker_threads";
|
|
4
|
+
export class NodeWorkerHost {
|
|
5
|
+
worker;
|
|
6
|
+
constructor(url) {
|
|
7
|
+
const workerUrl = typeof url === "string" ? new URL(url) : url;
|
|
8
|
+
const bootstrap = `
|
|
9
|
+
import { parentPort } from 'node:worker_threads';
|
|
10
|
+
globalThis.WorkerSelf = {
|
|
11
|
+
postMessage(msg) { parentPort.postMessage(msg); },
|
|
12
|
+
onMessage(handler) {
|
|
13
|
+
parentPort.on('message', (data) => handler({ data }));
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
await import("${workerUrl.href}");
|
|
17
|
+
`;
|
|
18
|
+
this.worker = new Worker(new URL(`data:text/javascript,${encodeURIComponent(bootstrap)}`));
|
|
19
|
+
}
|
|
20
|
+
postMessage(msg) {
|
|
21
|
+
this.worker.postMessage(msg);
|
|
22
|
+
}
|
|
23
|
+
onMessage(handler) {
|
|
24
|
+
this.worker.on("message", (data) => {
|
|
25
|
+
handler({ data });
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
onError(handler) {
|
|
29
|
+
this.worker.on("error", handler);
|
|
30
|
+
}
|
|
31
|
+
terminate() {
|
|
32
|
+
this.worker.terminate();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface IWorkerHost {
|
|
2
|
+
postMessage(msg: unknown): void;
|
|
3
|
+
onMessage(handler: (e: MessageEvent) => void): void;
|
|
4
|
+
onError(handler: (e: Event) => void): void;
|
|
5
|
+
terminate(): void;
|
|
6
|
+
}
|
|
7
|
+
export interface IWorkerSelf {
|
|
8
|
+
postMessage(msg: unknown): void;
|
|
9
|
+
onMessage(handler: (e: MessageEvent) => void): void;
|
|
10
|
+
}
|
|
11
|
+
declare global {
|
|
12
|
+
var WorkerHost: new (url: string | URL) => IWorkerHost;
|
|
13
|
+
var WorkerSelf: IWorkerSelf;
|
|
14
|
+
}
|
package/dist/workers/main.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
+
import type { IWorkerHost } from "./adapters/types.js";
|
|
1
2
|
import type { IServiceEventMessage, IServiceProxy, ServiceMethods, ServiceProtocol } from "./types.js";
|
|
2
3
|
/**
|
|
3
4
|
* Creates and initializes a service in a web worker, and returns a proxy for the service
|
|
4
5
|
* to be used from the main thread.
|
|
5
6
|
*
|
|
6
|
-
* @param workerArg
|
|
7
|
+
* @param workerArg An `IWorkerHost` instance, or a URL string to create one via the `WorkerHost` global.
|
|
7
8
|
* @param wasmModule The wasm module to initialize the service with
|
|
8
9
|
* @param serviceProtocol An object that describes the service: its constructor, methods and events
|
|
9
|
-
* @param workerType The type of worker to create: "classic" for browsers, "module" for Node.js
|
|
10
10
|
* @returns A proxy object that implements the service interface.
|
|
11
11
|
* This interface can now be used as if calling into the real service,
|
|
12
12
|
* and the calls will be proxied to the web worker.
|
|
13
13
|
*/
|
|
14
|
-
export declare function createProxy<TService extends ServiceMethods<TService>, TServiceEventMsg extends IServiceEventMessage>(workerArg: string |
|
|
14
|
+
export declare function createProxy<TService extends ServiceMethods<TService>, TServiceEventMsg extends IServiceEventMessage>(workerArg: string | IWorkerHost, wasmModule: WebAssembly.Module, serviceProtocol: ServiceProtocol<TService, TServiceEventMsg>): TService & IServiceProxy;
|
package/dist/workers/main.js
CHANGED
|
@@ -6,22 +6,17 @@ import { log } from "../log.js";
|
|
|
6
6
|
* Creates and initializes a service in a web worker, and returns a proxy for the service
|
|
7
7
|
* to be used from the main thread.
|
|
8
8
|
*
|
|
9
|
-
* @param workerArg
|
|
9
|
+
* @param workerArg An `IWorkerHost` instance, or a URL string to create one via the `WorkerHost` global.
|
|
10
10
|
* @param wasmModule The wasm module to initialize the service with
|
|
11
11
|
* @param serviceProtocol An object that describes the service: its constructor, methods and events
|
|
12
|
-
* @param workerType The type of worker to create: "classic" for browsers, "module" for Node.js
|
|
13
12
|
* @returns A proxy object that implements the service interface.
|
|
14
13
|
* This interface can now be used as if calling into the real service,
|
|
15
14
|
* and the calls will be proxied to the web worker.
|
|
16
15
|
*/
|
|
17
|
-
export function createProxy(workerArg, wasmModule, serviceProtocol
|
|
18
|
-
|
|
19
|
-
const useModuleWorker = { type: workerType };
|
|
20
|
-
const worker = typeof workerArg === "string"
|
|
21
|
-
? new Worker(workerArg, useModuleWorker)
|
|
22
|
-
: workerArg;
|
|
16
|
+
export function createProxy(workerArg, wasmModule, serviceProtocol) {
|
|
17
|
+
const worker = typeof workerArg === "string" ? new WorkerHost(workerArg) : workerArg;
|
|
23
18
|
// Log any errors from the worker
|
|
24
|
-
worker.
|
|
19
|
+
worker.onError((ev) => {
|
|
25
20
|
log.error("Worker error:", ev);
|
|
26
21
|
});
|
|
27
22
|
// Send it the Wasm module to instantiate
|
|
@@ -36,7 +31,7 @@ export function createProxy(workerArg, wasmModule, serviceProtocol, workerType)
|
|
|
36
31
|
// Create the proxy which will forward method calls to the worker
|
|
37
32
|
const proxy = createProxyInternal(postMessage, onTerminate, serviceProtocol.methods);
|
|
38
33
|
// Let proxy handle response and event messages from the worker
|
|
39
|
-
worker.
|
|
34
|
+
worker.onMessage((ev) => {
|
|
40
35
|
proxy.onMsgFromWorker(ev.data);
|
|
41
36
|
});
|
|
42
37
|
return proxy;
|
package/dist/workers/worker.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { IServiceEventMessage, ServiceMethods, ServiceProtocol } from "./types.js";
|
|
2
2
|
/**
|
|
3
|
-
* Creates
|
|
4
|
-
* This function
|
|
3
|
+
* Creates and initializes a service, setting it up to receive requests.
|
|
4
|
+
* This function is used in the worker thread. It uses the `WorkerSelf` global,
|
|
5
|
+
* which is bootstrapped by the platform-specific adapter before this code runs.
|
|
5
6
|
*
|
|
6
7
|
* @param serviceProtocol An object that describes the service: its constructor, methods and events
|
|
7
|
-
* @returns
|
|
8
|
+
* @returns The message handler registered on the worker thread.
|
|
8
9
|
*/
|
|
9
10
|
export declare function createWorker<TService extends ServiceMethods<TService>, TServiceEventMsg extends IServiceEventMessage>(serviceProtocol: ServiceProtocol<TService, TServiceEventMsg>): (e: MessageEvent) => void;
|
package/dist/workers/worker.js
CHANGED
|
@@ -4,16 +4,16 @@ import * as wasm from "../../lib/web/qsc_wasm.js";
|
|
|
4
4
|
import { QdkDiagnostics } from "../diagnostics.js";
|
|
5
5
|
import { log } from "../log.js";
|
|
6
6
|
/**
|
|
7
|
-
* Creates
|
|
8
|
-
* This function
|
|
7
|
+
* Creates and initializes a service, setting it up to receive requests.
|
|
8
|
+
* This function is used in the worker thread. It uses the `WorkerSelf` global,
|
|
9
|
+
* which is bootstrapped by the platform-specific adapter before this code runs.
|
|
9
10
|
*
|
|
10
11
|
* @param serviceProtocol An object that describes the service: its constructor, methods and events
|
|
11
|
-
* @returns
|
|
12
|
+
* @returns The message handler registered on the worker thread.
|
|
12
13
|
*/
|
|
13
14
|
export function createWorker(serviceProtocol) {
|
|
14
15
|
let invokeService = null;
|
|
15
|
-
|
|
16
|
-
return function messageHandler(e) {
|
|
16
|
+
const messageHandler = (e) => {
|
|
17
17
|
const data = e.data;
|
|
18
18
|
if (!data.type || typeof data.type !== "string") {
|
|
19
19
|
log.error(`Unrecognized msg: ${data}`);
|
|
@@ -23,7 +23,7 @@ export function createWorker(serviceProtocol) {
|
|
|
23
23
|
case "init":
|
|
24
24
|
{
|
|
25
25
|
wasm.initSync({ module: data.wasmModule });
|
|
26
|
-
invokeService = initService(
|
|
26
|
+
invokeService = initService(WorkerSelf.postMessage.bind(WorkerSelf), serviceProtocol, wasm, data.qscLogLevel);
|
|
27
27
|
}
|
|
28
28
|
break;
|
|
29
29
|
default:
|
|
@@ -35,6 +35,8 @@ export function createWorker(serviceProtocol) {
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
+
WorkerSelf.onMessage(messageHandler);
|
|
39
|
+
return messageHandler;
|
|
38
40
|
}
|
|
39
41
|
/**
|
|
40
42
|
* Serializes an error, if it is a known type, so that it can be sent between threads.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Microsoft.Quantum.Core.IsRangeEmpty
|
|
3
3
|
title: IsRangeEmpty exported item
|
|
4
4
|
description: "Q# IsRangeEmpty exported item: This is an exported item. The actual definition is found here: [Std.Range.IsRangeEmpty](xref:Qdk.Std.Range.IsRangeEmpty)"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: export
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Microsoft.Quantum.Core
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Microsoft.Quantum.Core.Length
|
|
3
3
|
title: Length exported item
|
|
4
4
|
description: "Q# Length exported item: This is an exported item. The actual definition is found here: [Std.Core.Length](xref:Qdk.Std.Core.Length)"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: export
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Microsoft.Quantum.Core
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Microsoft.Quantum.Core.RangeEnd
|
|
3
3
|
title: RangeEnd exported item
|
|
4
4
|
description: "Q# RangeEnd exported item: This is an exported item. The actual definition is found here: [Std.Range.RangeEnd](xref:Qdk.Std.Range.RangeEnd)"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: export
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Microsoft.Quantum.Core
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Microsoft.Quantum.Core.RangeStart
|
|
3
3
|
title: RangeStart exported item
|
|
4
4
|
description: "Q# RangeStart exported item: This is an exported item. The actual definition is found here: [Std.Range.RangeStart](xref:Qdk.Std.Range.RangeStart)"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: export
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Microsoft.Quantum.Core
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Microsoft.Quantum.Core.Repeated
|
|
3
3
|
title: Repeated exported item
|
|
4
4
|
description: "Q# Repeated exported item: This is an exported item. The actual definition is found here: [Std.Core.Repeated](xref:Qdk.Std.Core.Repeated)"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: export
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Microsoft.Quantum.Core
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.AddLE
|
|
3
3
|
title: AddLE operation
|
|
4
4
|
description: "Q# AddLE operation: Sets a zero-initialized little-endian register zs to the sum of little-endian registers xs and ys"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ApplyIfEqualL
|
|
3
3
|
title: ApplyIfEqualL operation
|
|
4
4
|
description: "Q# ApplyIfEqualL operation: Computes `if (c == x) { action(target) }`, that is, applies `action` to `target` if a BigInt value `c` is equal to the little-endian qubit register `x`"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ApplyIfEqualLE
|
|
3
3
|
title: ApplyIfEqualLE operation
|
|
4
4
|
description: "Q# ApplyIfEqualLE operation: Computes `if x == y { action(target) }`, that is, applies `action` to `target` if register `x` is equal to the register `y`. Both qubit registers should be in a little-endian format."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ApplyIfGreaterL
|
|
3
3
|
title: ApplyIfGreaterL operation
|
|
4
4
|
description: "Q# ApplyIfGreaterL operation: Computes `if (c > x) { action(target) }`, that is, applies `action` to `target` if a BigInt value `c` is greater than the little-endian qubit register `x`"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ApplyIfGreaterLE
|
|
3
3
|
title: ApplyIfGreaterLE operation
|
|
4
4
|
description: "Q# ApplyIfGreaterLE operation: Computes `if x > y { action(target) }`, that is, applies `action` to `target` if register `x` is greater than the register `y`. Both qubit registers should be in a little-endian format."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ApplyIfGreaterOrEqualL
|
|
3
3
|
title: ApplyIfGreaterOrEqualL operation
|
|
4
4
|
description: "Q# ApplyIfGreaterOrEqualL operation: Computes `if (c >= x) { action(target) }`, that is, applies `action` to `target` if a BigInt value `c` is greater or equal to the little-endian qubit register `x`"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ApplyIfGreaterOrEqualLE
|
|
3
3
|
title: ApplyIfGreaterOrEqualLE operation
|
|
4
4
|
description: "Q# ApplyIfGreaterOrEqualLE operation: Computes `if x >= y { action(target) }`, that is, applies `action` to `target` if register `x` is greater or equal to the register `y`. Both qubit registers should be in a little-endian format."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ApplyIfLessL
|
|
3
3
|
title: ApplyIfLessL operation
|
|
4
4
|
description: "Q# ApplyIfLessL operation: Computes `if (c < x) { action(target) }`, that is, applies `action` to `target` if a BigInt value `c` is less than the little-endian qubit register `x`"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ApplyIfLessLE
|
|
3
3
|
title: ApplyIfLessLE operation
|
|
4
4
|
description: "Q# ApplyIfLessLE operation: Computes `if x < y { action(target) }`, that is, applies `action` to `target` if register `x` is less than the register `y`. Both qubit registers should be in a little-endian format."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ApplyIfLessOrEqualL
|
|
3
3
|
title: ApplyIfLessOrEqualL operation
|
|
4
4
|
description: "Q# ApplyIfLessOrEqualL operation: Computes `if (c <= x) { action(target) }`, that is, applies `action` to `target` if a BigInt value `c` is less or equal to the little-endian qubit register `x`"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ApplyIfLessOrEqualLE
|
|
3
3
|
title: ApplyIfLessOrEqualLE operation
|
|
4
4
|
description: "Q# ApplyIfLessOrEqualLE operation: Computes `if x <= y { action(target) }`, that is, applies `action` to `target` if register `x` is less or equal to the register `y`. Both qubit registers should be in a little-endian format."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.FourierTDIncByLE
|
|
3
3
|
title: FourierTDIncByLE operation
|
|
4
4
|
description: "Q# FourierTDIncByLE operation: Increments a little-endian register ys by a little-endian register xs using Quantum Fourier Transform."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.IncByI
|
|
3
3
|
title: IncByI operation
|
|
4
4
|
description: "Q# IncByI operation: Increments a little-endian register ys by an integer number c"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.IncByIUsingIncByLE
|
|
3
3
|
title: IncByIUsingIncByLE operation
|
|
4
4
|
description: "Q# IncByIUsingIncByLE operation: Increments a little-endian register ys by an Int number c using provided adder."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.IncByL
|
|
3
3
|
title: IncByL operation
|
|
4
4
|
description: "Q# IncByL operation: Increments a little-endian register ys by a BigInt number c"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.IncByLE
|
|
3
3
|
title: IncByLE operation
|
|
4
4
|
description: "Q# IncByLE operation: Increments a little-endian register ys by a little-endian register xs"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.IncByLEUsingAddLE
|
|
3
3
|
title: IncByLEUsingAddLE operation
|
|
4
4
|
description: "Q# IncByLEUsingAddLE operation: Generic operation to turn two out-place adders into one in-place adder"
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.IncByLUsingIncByLE
|
|
3
3
|
title: IncByLUsingIncByLE operation
|
|
4
4
|
description: "Q# IncByLUsingIncByLE operation: Increments a little-endian register ys by a BigInt number c using provided adder."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.LookAheadDKRSAddLE
|
|
3
3
|
title: LookAheadDKRSAddLE operation
|
|
4
4
|
description: "Q# LookAheadDKRSAddLE operation: Sets a zero-initialized little-endian register zs to the sum of little-endian registers xs and ys using the carry-lookahead algorithm."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.MAJ
|
|
3
3
|
title: MAJ operation
|
|
4
4
|
description: "Q# MAJ operation: This applies the in-place majority operation to 3 qubits."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.Arithmetic.ReflectAboutInteger
|
|
3
3
|
title: ReflectAboutInteger operation
|
|
4
4
|
description: "Q# ReflectAboutInteger operation: Reflects a quantum register about a given classical integer."
|
|
5
|
-
ms.date: 04/
|
|
5
|
+
ms.date: 04/29/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.Arithmetic
|