DkmRootVisualizedExpression Classe

Definição

Objeto Dispatcher que representa uma expressão visualizada de nível superior. Uma instância é criada pelo avaliador de expressão quando ele determina que um tipo deve ser visualizado.

public ref class DkmRootVisualizedExpression : Microsoft::VisualStudio::Debugger::Evaluation::DkmVisualizedExpression
[System.Runtime.InteropServices.Guid("78ad085c-7b73-5937-a063-e2c7f4ee6556")]
public class DkmRootVisualizedExpression : Microsoft.VisualStudio.Debugger.Evaluation.DkmVisualizedExpression
[<System.Runtime.InteropServices.Guid("78ad085c-7b73-5937-a063-e2c7f4ee6556")>]
type DkmRootVisualizedExpression = class
    inherit DkmVisualizedExpression
Public Class DkmRootVisualizedExpression
Inherits DkmVisualizedExpression
Herança
Atributos

Propriedades

ArrayLength

Preterido: não é mais usado.

Flags

Sinalizadores o avaliador de expressão passa para o suplemento do visualizador que descreve o valor em questão. Por exemplo, isso incluirá se o objeto for um ponteiro ou se for uma referência.

FullName

O nome completo da expressão até o nó raiz. Os suplementos podem optar por usar esse nome completo ou construir seus próprios. No entanto, se o suplemento usar um nome completo diferente, ele deverá ser analisado pelo avaliador de expressão.

InspectionContext

Opções e contexto de destino a serem usados ao executar a operação de inspeção.

(Herdado de DkmVisualizedExpression)
InspectionSession

O InspectionSession permite que os vários componentes examinem os dados no processo de destino para armazenar dados privados com o mesmo tempo de vida. As sessões de inspeção são fechadas quando o usuário tenta continuar o processo.

(Herdado de DkmVisualizedExpression)
IsUnloaded

Retornará true se um evento ' Unloaded ' tiver sido gerado para este objeto (exemplo: DkmThread:: Unload é chamado) ou se o objeto foi fechado. Observe que o cuidado deve ser usado ao verificar esse status como, sem sincronização, o status retornado pode não ser mais preciso na instrução após sua leitura.

(Herdado de DkmDataContainer)
Module

Adicional O módulo que contém o símbolo de tipo.

Name

O nome da expressão até o nó raiz. Os suplementos podem optar por usar esse nome ou construir seus próprios.

RuntimeInstance

Indica qual monitor de tempo de execução será usado para executar essa avaliação.

(Herdado de DkmVisualizedExpression)
SourceId

O GUID que une o avaliador de expressão que criou esse objeto e o próprio objeto. Geralmente usado por avaliadores de expressão para filtrar sua implementação de IDkmCustomVisualizerCallback para apenas DkmVisualizedExpression que eles criaram.

(Herdado de DkmVisualizedExpression)
StackFrame

Frame de ativação a expressão está sendo avaliada na expressão em.

(Herdado de DkmVisualizedExpression)
TagValue

DkmVisualizedExpression é uma classe base abstrata. Essa enumeração indica a qual classe derivada esse objeto é uma instância do.

(Herdado de DkmVisualizedExpression)
Type

Adicional O tipo do objeto que está sendo inspecionado. Geralmente, esse é o mesmo tipo que está sendo referenciado pela entrada natvis que disparou o suplemento. No entanto, ele também pode ser um ponteiro ou uma referência para o tipo, ou até mesmo uma classe base ou derivada do tipo. O suplemento não deve fazer suposições sobre o que está nessa cadeia de caracteres e não deve tentar analisá-la para obter informações sobre o objeto. A maioria dos suplementos deve passar essa cadeia de caracteres, assim como é para a propriedade ' type ' do resultado da avaliação que eles criam. No entanto, um suplemento pode optar por adicionar anotações adicionais à cadeia de caracteres ' type ' antes de retorná-la de volta. Exceto para uma dica do que deve ser colocado no campo ' type ' do resultado, essa cadeia de caracteres é irrelevante para a visualização do objeto. Independentemente de o objeto original ser um ponteiro, uma referência, um tipo base ou um tipo derivado, o DkmExpressionValueHome fornecido sempre identificará o local do próprio objeto, nunca um ponteiro ou uma referência ao objeto. Uma cadeia de caracteres de tipo vazio pode ser passada aqui se o tipo do resultado da avaliação não for importante para o cenário no qual o visualizador está sendo invocado.

Essa API foi introduzida no Visual Studio 14 RTM (DkmApiVersion. VS14RTM).

UniqueId

GUID que identifica exclusivamente essa instância.

(Herdado de DkmVisualizedExpression)
ValueHome

Adicional O local no qual o valor é armazenado, que pode ser modificado para editar o valor. Isso deve ser nulo para valores somente leitura, como constantes de inteiro.

(Herdado de DkmVisualizedExpression)
VisualizerId

O GUID que une o suplemento e as expressões que chamam esse suplemento. O AddIn deve usar o GUID fornecido no arquivo do visualizador nativo como um filtro.

(Herdado de DkmVisualizedExpression)

Métodos

Close()

Fecha uma instância do objeto DkmVisualizedExpression. Isso liberará todos os recursos associados a esse objeto em todos os componentes. Isso inclui recursos no computador ou limites de Marshalling gerenciado/nativo.

Os objetos DkmVisualizedExpression são fechados automaticamente quando seu objeto DkmInspectionSession associado é fechado.

(Herdado de DkmVisualizedExpression)
Create(DkmInspectionContext, Guid, Guid, DkmStackWalkFrame, DkmExpressionValueHome, DkmModule, String, String, DkmRootVisualizedExpressionFlags, UInt32, DkmDataItem)

Crie uma nova instância do objeto DkmRootVisualizedExpression.

Create(DkmInspectionContext, Guid, Guid, DkmStackWalkFrame, DkmExpressionValueHome, DkmModule, String, String, DkmRootVisualizedExpressionFlags, UInt32, String, DkmDataItem)

Crie uma nova instância do objeto DkmRootVisualizedExpression.

         Essa API foi introduzida no Visual Studio 14 RTM (DkmApiVersion. VS14RTM).
CreateDefaultChildFullName(Int32)

Esse método criará um nome completo padrão para uma expressão filho visualizada personalizada. Esse nome será o nome completo da expressão raiz e uma cadeia de caracteres de formato de expansão que fará com que o avaliador de expressão faça o retorno de chamada para o visualizador para obter os filhos. A instância de DkmVisualizedExpression em que isso é chamado deve ser a expressão visualizada pai para um filho e a expressão visualizada raiz para uma raiz.

(Herdado de DkmVisualizedExpression)
EvaluateExpressionCallback(DkmInspectionContext, DkmLanguageExpression, DkmStackWalkFrame, DkmEvaluationResult)

Esse método permite que um suplemento de visualizador use o avaliador de expressão para compilar e avaliar o valor padrão de uma expressão. O suplemento pode usar esse resultado como está ou substituir campos criando um novo resultado. O suplemento também pode optar por usar o avaliador de expressão para expansão usando os retornos de chamada obter filhos.

(Herdado de DkmVisualizedExpression)
EvaluateVisualizedExpression(DkmEvaluationResult)

Avaliar uma expressão visualizada retornando um DkmEvaluationResult para ela.

Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000).

(Herdado de DkmVisualizedExpression)
GetChildren(Int32, DkmInspectionContext, DkmChildVisualizedExpression[], DkmEvaluationResultEnumContext)

Obtém um contexto de enumeração usado para obter os filhos desse resultado de avaliação. Isso é usado em todas as janelas de avaliação de expressão.

Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000).

(Herdado de DkmVisualizedExpression)
GetChildrenCallback(DkmEvaluationResult, Int32, DkmInspectionContext, DkmEvaluationResult[], DkmEvaluationResultEnumContext)

Esse método permite que um suplemento de visualizador use o avaliador de expressão para expansão. O resultado da avaliação contido na expressão visualizada deve vir do avaliador de expressão por meio de EvaluateExpressionCallback.

(Herdado de DkmVisualizedExpression)
GetDataItem<T>()

Obtém a instância de ' T' que foi adicionada a esta instância de contêiner. Se esse contêiner não contiver um ' T', essa função retornará NULL.

(Herdado de DkmDataContainer)
GetItems(DkmEvaluationResultEnumContext, Int32, Int32, DkmChildVisualizedExpression[])

Chamado para obter itens de uma instância do DkmEvaluationResultEnumContext criado por uma chamada anterior para GetChildren.

Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000).

(Herdado de DkmVisualizedExpression)
GetItemsCallback(DkmEvaluationResultEnumContext, Int32, Int32, DkmEvaluationResult[])

Esse método permite que um suplemento de visualizador use o avaliador de expressão para expansão usando o contexto de enumeração passado. Isso é usado para obter variáveis locais de um quadro de pilha ou membros filho de um resultado de avaliação.

(Herdado de DkmVisualizedExpression)
GetSymbolInterface(Guid, Object)

Permite que os suplementos do avaliador de expressão personalizada obtenham a interface de símbolo para o tipo que está sendo visualizado. Isso não é armazenado no DkmVisualizedExpression diretamente para habilitar os suplementos que residem no computador remoto e não dependem de símbolos.

Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000).

(Herdado de DkmVisualizedExpression)
GetUnderlyingString()

Esse método é usado para resultados de avaliação que incluem DkmEvaluationResultFlags. RawString para obter a cadeia de caracteres subjacente, sem aspas delimitadores ou sequências de escape. Esse método é invocado para exibir um dos vários visualizadores de cadeia de caracteres em uma janela de avaliação de expressão (clique no ícone de lupa).

Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000).

(Herdado de DkmVisualizedExpression)
GetUnderlyingStringCallback(DkmEvaluationResult)

Esse método é usado para resultados de avaliação que incluem DkmEvaluationResultFlags. RawString para obter a cadeia de caracteres subjacente, sem aspas delimitadores ou sequências de escape. Esse método é invocado para exibir um dos vários visualizadores de cadeia de caracteres em uma janela de avaliação de expressão (clique no ícone de lupa).

(Herdado de DkmVisualizedExpression)
RemoveDataItem<T>()

Remova a instância de ' T' deste contêiner. Normalmente, é desnecessário chamar esse método, pois um contêiner de dados será automaticamente esvaziado quando o objeto for fechado.

(Herdado de DkmDataContainer)
SetDataItem<T>(DkmDataCreationDisposition, T)

Coloque um novo item no contêiner de dados.

(Herdado de DkmDataContainer)
SetValueAsString(String, Int32, String)

Modifica o valor do resultado de avaliação fornecido (considerado como não somente leitura) para corresponder à cadeia de caracteres especificada. Isso é usado depois que o usuário edita um valor em qualquer uma das janelas de avaliação.

Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000).

(Herdado de DkmVisualizedExpression)
SetValueAsStringCallback(DkmEvaluationResult, String, Int32, String)

Modifica o valor do resultado de avaliação fornecido (considerado como não somente leitura) para corresponder à cadeia de caracteres especificada. Isso é usado depois que o usuário edita um valor em qualquer uma das janelas de avaliação.

(Herdado de DkmVisualizedExpression)
UseDefaultEvaluationBehavior(Boolean, DkmEvaluationResult)

Chamado pelo avaliador de expressão quando os filhos de uma expressão visualizada estão sendo expandidos, o valor está sendo definido ou a cadeia de caracteres subjacente está sendo obtida. Se o suplemento do visualizador quiser o controle completo da expressão, ele deverá retornar false. Em seguida, ele receberá chamadas para GetChildren, GetItems, SetValueAsString e getsubjacentestring. Se o suplemento do visualizador quiser adiar completamente essas operações para o avaliador de expressão, ele deverá retornar true. Ele também deve dar ao avaliador de expressão de volta a instância do DkmEvaluationResult que veio do EE por meio de um dos métodos IDkmCustomVisualizerCallback. Observe que o AddIn deve ter obtido o DkmEvaluationResult padrão do EE se desejar que o EE controle o objeto. Retornar true desse método é usado principalmente pelos suplementos do visualizador que apenas ajustam algo pequeno, como a exibição de um valor, mas não desejam modificar os valores de expansão ou configuração.

Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000).

(Herdado de DkmVisualizedExpression)

Implantações explícitas de interface

IDisposable.Dispose() (Herdado de DkmVisualizedExpression)

Aplica-se a