Interface IDataModelScriptDebugStack (dbgmodel.h)
Interface vers une pile dans le script. Le fournisseur de scripts implémente cette interface pour exposer la notion de pile d’appels au débogueur de script.
Héritage
IDataModelScriptDebugStack hérite d’IUnknown.
Méthode
L’interface IDataModelScriptDebugStack a ces méthodes.
IDataModelScriptDebugStack ::AddRef La méthode IDataModelScriptDebugStack ::AddRef incrémente le nombre de références d’une interface sur un objet. |
IDataModelScriptDebugStack ::GetFrameCount La méthode GetFrameCount retourne le nombre d’images de pile dans ce segment de la pile des appels. |
IDataModelScriptDebugStack ::GetStackFrame GetStackFrame obtient une trame de pile particulière à partir du segment de pile. |
IDataModelScriptDebugStack ::QueryInterface La méthode IDataModelScriptDebugStack ::QueryInterface récupère les pointeurs vers les interfaces prises en charge sur un objet. |
IDataModelScriptDebugStack ::Release La méthode IDataModelScriptDebugStack ::Release décrémente le nombre de références d’une interface sur un objet. |
Remarques
Lorsqu’un événement se produit qui se décompose dans le débogueur de script, l’interface de débogage souhaite récupérer la pile des appels pour l’emplacement d’arrêt. Cette opération est effectuée via la méthode GetStack. Cette pile est exprimée via IDataModelScriptDebugStack, qui est définie comme indiqué ci-dessous.
Notez que la pile globale peut s’étendre sur plusieurs scripts et/ou plusieurs fournisseurs de scripts. La pile d’appels retournée à partir d’un seul appel à la méthode GetStack sur l’interface de débogage d’un script particulier doit uniquement retourner le segment de la pile des appels dans les limites de ce script. Il est tout à fait possible qu’un moteur de débogage de script puisse récupérer la pile des appels comme s’étend sur plusieurs contextes de script si deux scripts du même fournisseur interagissent. La méthode GetStack ne doit pas retourner la partie de la pile qui se trouve dans un autre script. Au lieu de cela, si cette situation peut être détectée, l’image de pile qui est le cadre de limite dans le script doit se marquer comme une trame de transition via une implémentation des méthodes IsTransitionPoint et GetTransition sur cette trame de pile. On s’attend à ce que l’interface du débogueur rassemble la pile globale à partir des segments de pile multiples qui existent.
Il est impératif que les transitions soient implémentées de cette manière ou que l’interface de débogage puisse diriger des recherches sur les variables locales, les paramètres, les points d’arrêt et d’autres constructions spécifiques de script au contexte de script incorrect. Cela entraîne un comportement non défini dans l’interface du débogueur.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | dbgmodel.h |
Voir aussi
Vue d’ensemble du modèle de données du débogueur C++