radare2/r2-bindings/vapi/r_cmd.vapi

51 lines
1.4 KiB
Vala

/* radare - LGPL - Copyright 2010 pancake<nopcode.org> */
namespace Radare {
/*
// HACK
[Compact]
[CCode (cheader_filename="r_lib.h", cprefix="r_cmd_struct_", cname="RCmdStruct", free_function="", destroy_function="")]
public struct RCmdStruct {
public RLibType type;
public RCmdPlugin *data;
}
[Compact]
[CCode (cheader_filename="r_cmd.h", cprefix="r_cmd_macro_", cname="RCmdMacro", free_function="")]
public class RCmdMacro {
int counter;
uint64 *brk_value;
uint64 _brk_value;
int brk;
// TODO much moar
public int @add (string name);
public int rm (string name);
public void list ();
public int call (string name);
public int @break (string val);
}
[CCode (cheader_filename="r_cmd.h", cname="RCmdPlugin", free_function="", destroy_function="")]
public struct RCmdPlugin {
string name;
string desc;
RCmdCallback call;
}
*/
[CCode (has_target=false, cname="RCmdCallback")]
public delegate bool RCmdCallback (void *user, string cmd);
[Compact]
[CCode (cheader_filename="r_cmd.h", cprefix="r_cmd_", cname="RCmd", free_function="r_cmd_free")]
public class RCmd {
public RCmd ();
public void set_data (void *data);
public bool @add (string cmd, string desc, RCmdCallback cb);
public bool add_long (string cmd, string scmd, string desc);
public bool del (string cmd);
public bool call (string cmd);
public bool call_long (string cmd);
}
}