Compartilhar via


LocalBuilder.SetLocalSymInfo Método

Definição

Define as informações simbólicas da variável local.

Sobrecargas

SetLocalSymInfo(String)

Define o nome dessa variável local.

SetLocalSymInfo(String, Int32, Int32)

Define o nome e o escopo léxico dessa variável local.

SetLocalSymInfo(String)

Define o nome dessa variável 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

O nome da variável local.

Exceções

O tipo de contenção foi criado com CreateType().

-ou-

Não há nenhum gravador simbólico definido para o módulo que contém.

Esse local é definido em um método dinâmico, em vez de em um método de um tipo dinâmico.

O name é null.

Exemplos

O exemplo de código a seguir ilustra o uso do método SetLocalSymInfo. Esse código faz parte de um exemplo maior para a classe 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)

Comentários

O método SetLocalSymInfo tem suporte para métodos definidos em tipos dinâmicos. Não há suporte para métodos dinâmicos definidos usando a classe DynamicMethod.

Aplica-se a

SetLocalSymInfo(String, Int32, Int32)

Define o nome e o escopo léxico dessa variável 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

O nome da variável local.

startOffset
Int32

O deslocamento inicial do escopo léxico da variável local.

endOffset
Int32

O deslocamento final do escopo léxico da variável local.

Exceções

O tipo de contenção foi criado com CreateType().

-ou-

Não há nenhum gravador simbólico definido para o módulo que contém.

Esse local é definido em um método dinâmico, em vez de em um método de um tipo dinâmico.

Exemplos

O exemplo de código a seguir ilustra o uso do método SetLocalSymInfo. Esse código faz parte de um exemplo maior para a classe 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)

Comentários

O método SetLocalSymInfo tem suporte para métodos definidos em tipos dinâmicos. Não há suporte para métodos dinâmicos definidos usando a classe DynamicMethod.

Aplica-se a