summaryrefslogtreecommitdiff
path: root/plugins/dex/class.h
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/dex/class.h')
-rw-r--r--plugins/dex/class.h30
1 files changed, 23 insertions, 7 deletions
diff --git a/plugins/dex/class.h b/plugins/dex/class.h
index 71fd4c9..9d4e426 100644
--- a/plugins/dex/class.h
+++ b/plugins/dex/class.h
@@ -28,17 +28,18 @@
#include <glib-object.h>
+#include "field.h"
#include "format.h"
#include "method.h"
-#define G_TYPE_DEX_CLASS (g_dex_class_get_type())
-#define G_DEX_CLASS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), G_TYPE_DEX_CLASS, GDexClass))
-#define G_DEX_CLASS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), G_TYPE_DEX_CLASS, GDexClassClass))
-#define G_IS_DEX_CLASS(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), G_TYPE_DEX_CLASS))
-#define G_IS_DEX_CLASS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), G_TYPE_DEX_CLASS))
-#define G_DEX_CLASS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), G_TYPE_DEX_CLASS, GDexClassClass))
+#define G_TYPE_DEX_CLASS (g_dex_class_get_type())
+#define G_DEX_CLASS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), G_TYPE_DEX_CLASS, GDexClass))
+#define G_DEX_CLASS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), G_TYPE_DEX_CLASS, GDexClassClass))
+#define G_IS_DEX_CLASS(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), G_TYPE_DEX_CLASS))
+#define G_IS_DEX_CLASS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), G_TYPE_DEX_CLASS))
+#define G_DEX_CLASS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), G_TYPE_DEX_CLASS, GDexClassClass))
@@ -62,6 +63,21 @@ const class_def_item *g_dex_class_get_definition(const GDexClass *);
/* Fournit la définition brute des données d'une classe. */
const class_data_item *g_dex_class_get_data(const GDexClass *);
+/* Indique le type Android d'une classe. */
+GDataType *g_dex_class_get_class_type(const GDexClass *);
+
+/* Indique le type Android parent d'une classe. */
+GDataType *g_dex_class_get_superclass_type(const GDexClass *);
+
+/* Indique le type Android des interfaces d'une classe. */
+GDataType **g_dex_class_get_interface_types(const GDexClass *, size_t *);
+
+/* Dénombre les champs de classe chargés d'une classe donnée. */
+size_t g_dex_class_count_fields(const GDexClass *, bool);
+
+/* Fournit un champ chargé correspondant à une classe donnée. */
+GDexField *g_dex_class_get_field(const GDexClass *, bool, size_t);
+
/* Dénombre les méthodes chargées d'un type donné. */
size_t g_dex_class_count_methods(const GDexClass *, bool);
@@ -75,7 +91,7 @@ void g_dex_class_include_as_portion(const GDexClass *, GExeFormat *);
GDexMethod *g_dex_class_find_method_by_address(const GDexClass *, vmpa_t);
/* Retrouve si possible le nom du fichier source d'une classe. */
-const char *g_dex_class_get_source_file(const GDexClass *, const GDexFormat *);
+const char *g_dex_class_get_source_file(const GDexClass *);
/* Procède à la décompilation complète d'une classe donnée. */
//void g_dex_class_decompile(const GDexClass *, GLangOutput *, GCodeBuffer *, const GDexFormat *);