Sdílet prostřednictvím


Rozhraní vyhodnocovače klíčových výrazů

Důležité

V sadě Visual Studio 2015 je tento způsob implementace vyhodnocovačů výrazů zastaralý. Informace o implementaci vyhodnocovačů výrazů CLR najdete v tématu vyhodnocovače výrazů CLR a ukázka vyhodnocovače spravovaných výrazů.

Při psaní vyhodnocovače výrazů (EE) spolu s kontextem vyhodnocení byste měli být obeznámeni s následujícími rozhraními.

Popisy rozhraní

  • IDebugAddress

    Má jednu metodu GetAddress, která získá datovou strukturu, která představuje aktuální bod provádění. Tato datová struktura je jedním ze tří argumentů, které ladicí modul (DE) předává metodě EvaluateSync k vyhodnocení výrazu. Toto rozhraní obvykle implementuje poskytovatel symbolů.

  • IDebugBinder

    Má Bind metoda, která získá oblast paměti, která obsahuje aktuální hodnotu symbolu. Vzhledem k tomu, obsahující metody, reprezentované IDebugObject objektu, a symbol samotný, reprezentovaný IDebugField objektu, IDebugBinder::Bind vrátí hodnotu symbolu. IDebugBinder je obvykle implementováno de.

  • IDebugField

    Představuje jednoduchý datový typ. Pro složitější typy, jako jsou pole a metody, použijte odvozené IDebugArrayField a IDebugMethodField rozhraní, v uvedeném pořadí. IDebugContainerField je další důležité odvozené rozhraní, které představuje symboly obsahující jiné symboly, jako jsou metody nebo třídy. Rozhraní IDebugField (a jeho deriváty) je obvykle implementováno poskytovatelem symbolů.

    Objekt IDebugField lze použít k vyhledání názvu a typu symbolu a společně s objektem IDebugBinder lze najít jeho hodnotu.

  • IDebugObject

    Představuje skutečné bity hodnoty běhu symbolu. Bind přebírá IDebugField objekt, který představuje symbol a vrací IDebugObject objektu. Metoda GetValue vrátí hodnotu symbolu v vyrovnávací paměti. De obvykle implementuje toto rozhraní, které představuje hodnotu vlastnosti v paměti.

  • IDebugExpressionEvaluator

    Toto rozhraní představuje samotný vyhodnocovací modul výrazu. Key Method je Parse, který vrací IDebugParsedExpression rozhraní.

  • IDebugParsedExpression

    Toto rozhraní představuje analyzovaný výraz připravený k vyhodnocení. Metoda key je EvaluateSync , která vrací IDebugProperty2 představující hodnotu a typ výrazu.

  • IDebugProperty2

    Toto rozhraní představuje hodnotu a její typ a je výsledkem vyhodnocení výrazu.

Viz také