UniqueVariableNames Class

Definition

Upon transformation, assigns each defined variable a unique name, independent on the scope, and replaces all references to it accordingly. The original variable name can be recovered by using the static method StripUniqueName. This class is not threadsafe.

public class UniqueVariableNames : Microsoft.Quantum.QsCompiler.Transformations.Core.SyntaxTreeTransformation<Microsoft.Quantum.QsCompiler.Transformations.SearchAndReplace.UniqueVariableNames.TransformationState>
type UniqueVariableNames = class
    inherit SyntaxTreeTransformation<UniqueVariableNames.TransformationState>
Public Class UniqueVariableNames
Inherits SyntaxTreeTransformation(Of UniqueVariableNames.TransformationState)
Inheritance

Constructors

UniqueVariableNames()

Properties

ExpressionKinds (Inherited from SyntaxTreeTransformation<T>)
Expressions (Inherited from SyntaxTreeTransformation<T>)
Namespaces (Inherited from SyntaxTreeTransformation<T>)
SharedState (Inherited from SyntaxTreeTransformation<T>)
StatementKinds (Inherited from SyntaxTreeTransformation<T>)
Statements (Inherited from SyntaxTreeTransformation<T>)
Types (Inherited from SyntaxTreeTransformation<T>)

Methods

OnAbsoluteLocation(QsNullable<QsLocation>) (Inherited from SyntaxTreeTransformation<T>)
OnArgumentTuple(QsTuple<LocalVariableDeclaration<QsLocalSymbol,ResolvedType>>) (Inherited from SyntaxTreeTransformation<T>)
OnCompilation(QsCompilation) (Inherited from SyntaxTreeTransformation<T>)
OnExpressionRange(QsNullable<Range>) (Inherited from SyntaxTreeTransformation<T>)
OnItemName(UserDefinedType, String) (Inherited from SyntaxTreeTransformation<T>)
OnItemNameDeclaration(String) (Inherited from SyntaxTreeTransformation<T>)
OnLocalName(String)
OnLocalNameDeclaration(String)
OnRelativeLocation(QsNullable<QsLocation>) (Inherited from SyntaxTreeTransformation<T>)
OnSymbolLocation(QsNullable<Position>, Range) (Inherited from SyntaxTreeTransformation<T>)
OnTypeRange(TypeRange) (Inherited from SyntaxTreeTransformation<T>)
StripUniqueName(String)

Applies to