Поделиться через


LocalBuilder.SetLocalSymInfo Метод

Определение

Задает символьные сведения локальной переменной.

Перегрузки

SetLocalSymInfo(String)

Задает имя этой локальной переменной.

SetLocalSymInfo(String, Int32, Int32)

Задает имя и лексическую область этой локальной переменной.

SetLocalSymInfo(String)

Задает имя этой локальной переменной.

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

Параметры

name
String

Имя локальной переменной.

Исключения

Содержащий тип был создан с CreateType().

-или-

Для содержащего модуля символьный модуль не определен символьный модуль.

Этот локальный определяется в динамическом методе, а не в методе динамического типа.

Примеры

В следующем примере кода показано использование метода SetLocalSymInfo. Этот код является частью более крупного примера для класса 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)

Комментарии

Метод SetLocalSymInfo поддерживается для методов, определенных в динамических типах. Он не поддерживается для динамических методов, определенных с помощью класса DynamicMethod.

Применяется к

SetLocalSymInfo(String, Int32, Int32)

Задает имя и лексическую область этой локальной переменной.

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)

Параметры

name
String

Имя локальной переменной.

startOffset
Int32

Начальное смещение лексической области локальной переменной.

endOffset
Int32

Конечное смещение лексической области локальной переменной.

Исключения

Содержащий тип был создан с CreateType().

-или-

Для содержащего модуля символьный модуль не определен символьный модуль.

Этот локальный определяется в динамическом методе, а не в методе динамического типа.

Примеры

В следующем примере кода показано использование метода SetLocalSymInfo. Этот код является частью более крупного примера для класса 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)

Комментарии

Метод SetLocalSymInfo поддерживается для методов, определенных в динамических типах. Он не поддерживается для динамических методов, определенных с помощью класса DynamicMethod.

Применяется к