Compartir a través de


LocalBuilder.SetLocalSymInfo Método

Definición

Establece la información simbólica de la variable local.

Sobrecargas

SetLocalSymInfo(String)

Establece el nombre de esta variable local.

SetLocalSymInfo(String, Int32, Int32)

Establece el nombre y el ámbito léxico de esta variable local.

SetLocalSymInfo(String)

Establece el nombre de esta variable local.

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

Parámetros

name
String

Nombre de la variable local.

Excepciones

El tipo contenedor se ha creado con CreateType().

-o-

No hay ningún escritor simbólico definido para el módulo contenedor.

Este valor local se define en un método dinámico, en lugar de en un método de un tipo dinámico.

El name es null.

Ejemplos

En el ejemplo de código siguiente se muestra el uso del método SetLocalSymInfo. Este código forma parte de un ejemplo más grande para la clase 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)

Comentarios

El método SetLocalSymInfo se admite para los métodos definidos en tipos dinámicos. No se admite para los métodos dinámicos definidos mediante la clase DynamicMethod.

Se aplica a

SetLocalSymInfo(String, Int32, Int32)

Establece el nombre y el ámbito léxico de esta variable local.

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)

Parámetros

name
String

Nombre de la variable local.

startOffset
Int32

Desplazamiento inicial del ámbito léxico de la variable local.

endOffset
Int32

Desplazamiento final del ámbito léxico de la variable local.

Excepciones

El tipo contenedor se ha creado con CreateType().

-o-

No hay ningún escritor simbólico definido para el módulo contenedor.

Este valor local se define en un método dinámico, en lugar de en un método de un tipo dinámico.

Ejemplos

En el ejemplo de código siguiente se muestra el uso del método SetLocalSymInfo. Este código forma parte de un ejemplo más grande para la clase 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)

Comentarios

El método SetLocalSymInfo se admite para los métodos definidos en tipos dinámicos. No se admite para los métodos dinámicos definidos mediante la clase DynamicMethod.

Se aplica a