LocalBuilder.SetLocalSymInfo Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.