Freigeben über


LocalBuilder.SetLocalSymInfo Methode

Definition

Legt die symbolischen Informationen der lokalen Variable fest.

Überlädt

SetLocalSymInfo(String)

Legt den Namen dieser lokalen Variablen fest.

SetLocalSymInfo(String, Int32, Int32)

Legt den Namen und den lexikalischen Bereich dieser lokalen Variablen fest.

SetLocalSymInfo(String)

Legt den Namen dieser lokalen Variablen fest.

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

Parameter

name
String

Der Name der lokalen Variablen.

Ausnahmen

Der enthaltende Typ wurde mit CreateType()erstellt.

-oder-

Für das enthaltende Modul ist kein symbolischer Autor definiert.

Dieses lokale Element wird in einer dynamischen Methode und nicht in einer Methode eines dynamischen Typs definiert.

Die name ist null.

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung der SetLocalSymInfo-Methode. Dieser Code ist Teil eines größeren Beispiels für die LocalBuilder Klasse.

// 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)

Hinweise

Die SetLocalSymInfo-Methode wird für Methoden unterstützt, die in dynamischen Typen definiert sind. Es wird für dynamische Methoden, die mithilfe der DynamicMethod-Klasse definiert sind, nicht unterstützt.

Gilt für:

SetLocalSymInfo(String, Int32, Int32)

Legt den Namen und den lexikalischen Bereich dieser lokalen Variablen fest.

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)

Parameter

name
String

Der Name der lokalen Variablen.

startOffset
Int32

Der Anfangsoffset des lexikalischen Bereichs der lokalen Variablen.

endOffset
Int32

Der endende Offset des lexikalischen Bereichs der lokalen Variablen.

Ausnahmen

Der enthaltende Typ wurde mit CreateType()erstellt.

-oder-

Für das enthaltende Modul ist kein symbolischer Autor definiert.

Dieses lokale Element wird in einer dynamischen Methode und nicht in einer Methode eines dynamischen Typs definiert.

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung der SetLocalSymInfo-Methode. Dieser Code ist Teil eines größeren Beispiels für die LocalBuilder Klasse.

// 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)

Hinweise

Die SetLocalSymInfo-Methode wird für Methoden unterstützt, die in dynamischen Typen definiert sind. Es wird für dynamische Methoden, die mithilfe der DynamicMethod-Klasse definiert sind, nicht unterstützt.

Gilt für: