Udostępnij za pośrednictwem


LocalBuilder.SetLocalSymInfo Metoda

Definicja

Ustawia informacje symboliczne zmiennej lokalnej.

Przeciążenia

SetLocalSymInfo(String)

Ustawia nazwę tej zmiennej lokalnej.

SetLocalSymInfo(String, Int32, Int32)

Ustawia nazwę i zakres leksykalny tej zmiennej lokalnej.

SetLocalSymInfo(String)

Ustawia nazwę tej zmiennej lokalnej.

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

Parametry

name
String

Nazwa zmiennej lokalnej.

Wyjątki

Typ zawierający został utworzony za pomocą CreateType().

-lub-

Brak symbolicznego modułu zapisywania zdefiniowanego dla modułu zawierającego.

Ten obiekt lokalny jest definiowany w metodzie dynamicznej, a nie w metodzie typu dynamicznego.

name jest null.

Przykłady

Poniższy przykładowy kod ilustruje użycie metody SetLocalSymInfo. Ten kod jest częścią większego przykładu dla klasy 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)

Uwagi

Metoda SetLocalSymInfo jest obsługiwana dla metod zdefiniowanych w typach dynamicznych. Nie jest obsługiwana w przypadku metod dynamicznych zdefiniowanych przy użyciu klasy DynamicMethod.

Dotyczy

SetLocalSymInfo(String, Int32, Int32)

Ustawia nazwę i zakres leksykalny tej zmiennej lokalnej.

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)

Parametry

name
String

Nazwa zmiennej lokalnej.

startOffset
Int32

Początkowe przesunięcie zakresu leksykalnego zmiennej lokalnej.

endOffset
Int32

Końcowe przesunięcie zakresu leksykalnego zmiennej lokalnej.

Wyjątki

Typ zawierający został utworzony za pomocą CreateType().

-lub-

Brak symbolicznego modułu zapisywania zdefiniowanego dla modułu zawierającego.

Ten obiekt lokalny jest definiowany w metodzie dynamicznej, a nie w metodzie typu dynamicznego.

Przykłady

Poniższy przykładowy kod ilustruje użycie metody SetLocalSymInfo. Ten kod jest częścią większego przykładu dla klasy 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)

Uwagi

Metoda SetLocalSymInfo jest obsługiwana dla metod zdefiniowanych w typach dynamicznych. Nie jest obsługiwana w przypadku metod dynamicznych zdefiniowanych przy użyciu klasy DynamicMethod.

Dotyczy