]> git.siccegge.de Git - frida/frida.git/blob - src/bindings/guile/frida.i
Restructure InformationManager
[frida/frida.git] / src / bindings / guile / frida.i
1 %module frida
2
3 %rename("%(utitle)s") "";
4
5 %include <cpointer.i>
6 %include <stdint.i>
7 %include <std_string.i>
8 %include <std_map.i>
9 %include <stl.i>
10
11 // noone knows how to get these working
12 %ignore beginFunctions();
13 %ignore endFunctions();
14 %ignore beginBasicBlocks();
15 %ignore endBasicBlocks();
16
17 %{
18 #include "core/Function.hxx"
19 #include "core/BasicBlock.hxx"
20 #include "core/InformationManager.hxx"
21 #include "disassembler/Disassembler.hxx"
22
23 extern InformationManager* current_information_manager;
24 %}
25
26 namespace std {
27 %template(BasicBlockMap) map<unsigned long, BasicBlock*>;
28 %template(FunctionMap) map<unsigned long, Function*>;
29 %template(InterpreterMap) map<std::string, Interpreter*>;
30 }
31
32 %inline %{
33 BasicBlock* deref(BasicBlock** x) {
34 return *x;
35 }
36 %}
37
38 %include "core/Function.hxx"
39 %include "core/BasicBlock.hxx"
40 %include "core/InformationManager.hxx"
41 %include "disassembler/Disassembler.hxx"
42
43 extern InformationManager* current_information_manager;