ISymbolWriter.DefineLocalVariable Metoda

Definicja

Definiuje pojedynczą zmienną w bieżącym zakresie leksykalnym.

public:
 void DefineLocalVariable(System::String ^ name, System::Reflection::FieldAttributes attributes, cli::array <System::Byte> ^ signature, System::Diagnostics::SymbolStore::SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset);
public void DefineLocalVariable (string name, System.Reflection.FieldAttributes attributes, byte[] signature, System.Diagnostics.SymbolStore.SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset);
abstract member DefineLocalVariable : string * System.Reflection.FieldAttributes * byte[] * System.Diagnostics.SymbolStore.SymAddressKind * int * int * int * int * int -> unit
Public Sub DefineLocalVariable (name As String, attributes As FieldAttributes, signature As Byte(), addrKind As SymAddressKind, addr1 As Integer, addr2 As Integer, addr3 As Integer, startOffset As Integer, endOffset As Integer)

Parametry

name
String

Nazwa zmiennej lokalnej.

attributes
FieldAttributes

Bitowa kombinacja atrybutów zmiennej lokalnej.

signature
Byte[]

Sygnatura zmiennej lokalnej.

addrKind
SymAddressKind

Typy adresów dla addr1, addr2i addr3.

addr1
Int32

Pierwszy adres specyfikacji zmiennej lokalnej.

addr2
Int32

Drugi adres specyfikacji zmiennej lokalnej.

addr3
Int32

Trzeci adres specyfikacji zmiennej lokalnej.

startOffset
Int32

Przesunięcie początkowe zmiennej. Jeśli ten parametr ma wartość zero, jest ignorowany, a zmienna jest definiowana w całym zakresie. Jeśli parametr jest różny od zera, zmienna mieści się w przesunięciach bieżącego zakresu.

endOffset
Int32

Przesunięcie końcowe zmiennej. Jeśli ten parametr ma wartość zero, jest ignorowany, a zmienna jest definiowana w całym zakresie. Jeśli parametr jest różny od zera, zmienna mieści się w przesunięciach bieżącego zakresu.

Uwagi

Parametry startOffset i endOffset są opcjonalne. Jeśli ich wartość jest równa zero, są ignorowane, a zmienna jest definiowana w całym zakresie. Jeśli ich wartość jest różna od zera, zmienna mieści się w przesunięciach bieżącego zakresu.

Można wywołać DefineLocalVariable wiele razy dla zmiennej o tej samej nazwie, która występuje wiele razy w różnych zakresach przesunięcia w całym zakresie. (W tym przypadku przesunięcia początkowe i końcowe nie mogą nakładać się na siebie).

Dotyczy