Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Interfaccia di uno stack nello script. Il provider di script implementa questa interfaccia per esporre la nozione di stack di chiamate al debugger di script.
Eredità
IDataModelScriptDebugStack eredita da IUnknown.
Metodi
L'interfaccia IDataModelScriptDebugStack dispone di questi metodi.
IDataModelScriptDebugStack::AddRef Il metodo IDataModelScriptDebugStack::AddRef incrementa il conteggio dei riferimenti per un'interfaccia in un oggetto . |
IDataModelScriptDebugStack::GetFrameCount Il metodo GetFrameCount restituisce il numero di stack frame in questo segmento dello stack di chiamate. |
IDataModelScriptDebugStack::GetStackFrame GetStackFrame ottiene un particolare stack frame dal segmento dello stack. |
IDataModelScriptDebugStack::QueryInterface Il metodo IDataModelScriptDebugStack::QueryInterface recupera i puntatori alle interfacce supportate in un oggetto . |
IDataModelScriptDebugStack::Release Il metodo IDataModelScriptDebugStack::Release decrementa il conteggio dei riferimenti per un'interfaccia in un oggetto . |
Osservazioni
Quando si verifica un evento che si interrompe nel debugger di script, l'interfaccia di debug vuole recuperare lo stack di chiamate per il percorso di interruzione. Questa operazione viene eseguita tramite il metodo GetStack. Tale stack viene espresso tramite IDataModelScriptDebugStack, definito come indicato di seguito.
Si noti che lo stack complessivo può estendersi su più script e/o più provider di script. Lo stack di chiamate restituito da una singola chiamata al metodo GetStack su un'interfaccia di debug di uno script specifico deve restituire solo il segmento dello stack di chiamate all'interno dei limiti dello script. È del tutto possibile che un motore di debug di script possa recuperare lo stack di chiamate come si estende su più contesti di script se due script dello stesso provider interagiscono. Il metodo GetStack non deve restituire la parte dello stack che si trova in un altro script. Se invece questa situazione può essere rilevata, lo stack frame che rappresenta il frame limite nello script deve contrassegnarsi come frame di transizione tramite un'implementazione dei metodi IsTransitionPoint e GetTransition su tale stack frame. È previsto che l'interfaccia del debugger unisce lo stack complessivo dai più segmenti di stack esistenti.
È fondamentale implementare le transizioni in questo modo o l'interfaccia di debug può indirizzare richieste su variabili locali, parametri, punti di interruzione e altri costrutti specifici dello script al contesto di script errato. Ciò comporterà un comportamento non definito nell'interfaccia del debugger.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | dbgmodel.h |
Vedere anche
Panoramica del modello di dati del debugger di C++