diff options
Diffstat (limited to 'src/debug/jdwp/jdwp_def.h')
-rw-r--r-- | src/debug/jdwp/jdwp_def.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/debug/jdwp/jdwp_def.h b/src/debug/jdwp/jdwp_def.h index 7f13f8c..17df081 100644 --- a/src/debug/jdwp/jdwp_def.h +++ b/src/debug/jdwp/jdwp_def.h @@ -99,6 +99,17 @@ typedef uint64_t jdwp_dynsized_id; +/* "location" */ +typedef struct _jdwp_location +{ + jdwp_type_tag tag; /* Classe ou interface ? */ + + jdwp_dynsized_id class_id; /* Identifiant correspondant */ + jdwp_dynsized_id method_id; /* Méthode concernée */ + uint64_t index; /* Position dans le code */ + +} jdwp_location; + /* "string" */ typedef struct _jdwp_string @@ -111,6 +122,10 @@ typedef struct _jdwp_string + + + + /** * Jeux de commandes. */ @@ -137,6 +152,7 @@ typedef struct _jdwp_string /* ThreadReference Command Set */ #define JDWP_CMD_THREAD_NAME 1 +#define JDWP_CMD_THREAD_FRAMES 6 /** @@ -190,6 +206,32 @@ typedef struct _jdwp_cmd_thread_name_reply } jdwp_cmd_thread_name_reply; +/* JDWP_CMD_THREAD_FRAMES */ + +typedef struct _jdwp_cmd_thread_frames_request +{ + jdwp_dynsized_id id; /* Identifiant du thread visé */ + uint32_t start; /* Première frame à traiter */ + uint32_t length; /* Longueur de la liste ou -1 */ + +} jdwp_cmd_thread_frames_request; + +#define ALL_FRAMES 0xffffffff + +typedef struct _jdwp_thread_frame +{ + jdwp_dynsized_id frame_id; /* Identifiant de la frame */ + jdwp_location location; /* Localisation de la frame */ + +} jdwp_thread_frame; + +typedef struct _jdwp_cmd_thread_frames_reply +{ + uint32_t count; /* Taille de la liste */ + jdwp_thread_frame *frames; /* Liste de frames */ + +} jdwp_cmd_thread_frames_reply; + #endif /* _DEBUG_JDWP_JDWP_DEF_H */ |