QsScope Class

Definition

[Microsoft.FSharp.Core.CompilationMapping(Microsoft.FSharp.Core.SourceConstructFlags.RecordType)]
[System.Serializable]
public sealed class QsScope : IComparable, IComparable<Microsoft.Quantum.QsCompiler.SyntaxTree.QsScope>, IEquatable<Microsoft.Quantum.QsCompiler.SyntaxTree.QsScope>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable
[<Microsoft.FSharp.Core.CompilationMapping(Microsoft.FSharp.Core.SourceConstructFlags.RecordType)>]
[<System.Serializable>]
type QsScope = {}
Public NotInheritable Class QsScope
Implements IComparable, IComparable(Of QsScope), IEquatable(Of QsScope), IStructuralComparable, IStructuralEquatable
Inheritance
QsScope
Attributes
Microsoft.FSharp.Core.CompilationMappingAttribute SerializableAttribute
Implements

Constructors

QsScope(ImmutableArray<QsStatement>, LocalDeclarations)

Properties

KnownSymbols
Statements

Methods

CompareTo(Object)
CompareTo(Object, IComparer)
CompareTo(QsScope)
Equals(Object)
Equals(Object, IEqualityComparer)
Equals(QsScope)
GetHashCode()
GetHashCode(IEqualityComparer)
ToString()

Extension Methods

GenerateAdjoint(QsScope)

Given the body of an operation, auto-generates the (content of the) adjoint specialization, under the assumption that operation calls may only ever occur within expression statements, and while-loops cannot occur within operations.

GenerateControlled(QsScope)

Given the body of an operation, auto-generates the (content of the) controlled specialization using the default name for control qubits. Adds the control qubits names to the list of defined variables for the scope and each subscope.

Applies to