LocalBuilder.SetLocalSymInfo Méthode

Définition

Définit les informations symboliques de la variable locale.

Surcharges

SetLocalSymInfo(String)

Définit le nom de cette variable locale.

SetLocalSymInfo(String, Int32, Int32)

Définit le nom et l’étendue lexicale de cette variable locale.

SetLocalSymInfo(String)

Définit le nom de cette variable locale.

public:
 void SetLocalSymInfo(System::String ^ name);
public void SetLocalSymInfo (string name);
member this.SetLocalSymInfo : string -> unit
Public Sub SetLocalSymInfo (name As String)

Paramètres

name
String

Nom de la variable locale.

Exceptions

Le type conteneur a été créé avec CreateType().

-ou-

Aucun enregistreur symbolique n’est défini pour le module conteneur.

Ce local est défini dans une méthode dynamique, plutôt que dans une méthode d’un type dynamique.

Le name est null.

Exemples

L’exemple de code suivant illustre l’utilisation de la méthode SetLocalSymInfo. Ce code fait partie d’un exemple plus large pour la classe LocalBuilder.

// Create local variables named myString and myInt.
LocalBuilder^ myLB1 = myMethodIL->DeclareLocal( String::typeid );
myLB1->SetLocalSymInfo( "myString" );
Console::WriteLine( "local 'myString' type is: {0}", myLB1->LocalType );

LocalBuilder^ myLB2 = myMethodIL->DeclareLocal( int::typeid );
myLB2->SetLocalSymInfo( "myInt", 1, 2 );
Console::WriteLine( "local 'myInt' type is: {0}", myLB2->LocalType );
// Create local variables named myString and myInt.
LocalBuilder myLB1 = myMethodIL.DeclareLocal(typeof(string));
myLB1.SetLocalSymInfo("myString");
Console.WriteLine("local 'myString' type is: {0}", myLB1.LocalType);

LocalBuilder myLB2 = myMethodIL.DeclareLocal(typeof(int));
myLB2.SetLocalSymInfo("myInt", 1, 2);
Console.WriteLine("local 'myInt' type is: {0}", myLB2.LocalType);
' Create local variables named myString and myInt.
Dim myLB1 As LocalBuilder = myMethodIL.DeclareLocal(GetType(String))
myLB1.SetLocalSymInfo("myString")
Console.WriteLine("local 'myString' type is: {0}", myLB1.LocalType)

Dim myLB2 As LocalBuilder = myMethodIL.DeclareLocal(GetType(Integer))
myLB2.SetLocalSymInfo("myInt", 1, 2)
Console.WriteLine("local 'myInt' type is: {0}", myLB2.LocalType)

Remarques

La méthode SetLocalSymInfo est prise en charge pour les méthodes définies dans les types dynamiques. Il n’est pas pris en charge pour les méthodes dynamiques définies à l’aide de la classe DynamicMethod.

S’applique à

SetLocalSymInfo(String, Int32, Int32)

Définit le nom et l’étendue lexicale de cette variable locale.

public:
 void SetLocalSymInfo(System::String ^ name, int startOffset, int endOffset);
public void SetLocalSymInfo (string name, int startOffset, int endOffset);
member this.SetLocalSymInfo : string * int * int -> unit
Public Sub SetLocalSymInfo (name As String, startOffset As Integer, endOffset As Integer)

Paramètres

name
String

Nom de la variable locale.

startOffset
Int32

Décalage de début de l’étendue lexicale de la variable locale.

endOffset
Int32

Décalage de fin de l’étendue lexicale de la variable locale.

Exceptions

Le type conteneur a été créé avec CreateType().

-ou-

Aucun enregistreur symbolique n’est défini pour le module conteneur.

Ce local est défini dans une méthode dynamique, plutôt que dans une méthode d’un type dynamique.

Exemples

L’exemple de code suivant illustre l’utilisation de la méthode SetLocalSymInfo. Ce code fait partie d’un exemple plus large pour la classe LocalBuilder.

// Create local variables named myString and myInt.
LocalBuilder^ myLB1 = myMethodIL->DeclareLocal( String::typeid );
myLB1->SetLocalSymInfo( "myString" );
Console::WriteLine( "local 'myString' type is: {0}", myLB1->LocalType );

LocalBuilder^ myLB2 = myMethodIL->DeclareLocal( int::typeid );
myLB2->SetLocalSymInfo( "myInt", 1, 2 );
Console::WriteLine( "local 'myInt' type is: {0}", myLB2->LocalType );
// Create local variables named myString and myInt.
LocalBuilder myLB1 = myMethodIL.DeclareLocal(typeof(string));
myLB1.SetLocalSymInfo("myString");
Console.WriteLine("local 'myString' type is: {0}", myLB1.LocalType);

LocalBuilder myLB2 = myMethodIL.DeclareLocal(typeof(int));
myLB2.SetLocalSymInfo("myInt", 1, 2);
Console.WriteLine("local 'myInt' type is: {0}", myLB2.LocalType);
' Create local variables named myString and myInt.
Dim myLB1 As LocalBuilder = myMethodIL.DeclareLocal(GetType(String))
myLB1.SetLocalSymInfo("myString")
Console.WriteLine("local 'myString' type is: {0}", myLB1.LocalType)

Dim myLB2 As LocalBuilder = myMethodIL.DeclareLocal(GetType(Integer))
myLB2.SetLocalSymInfo("myInt", 1, 2)
Console.WriteLine("local 'myInt' type is: {0}", myLB2.LocalType)

Remarques

La méthode SetLocalSymInfo est prise en charge pour les méthodes définies dans les types dynamiques. Il n’est pas pris en charge pour les méthodes dynamiques définies à l’aide de la classe DynamicMethod.

S’applique à