xref: /haiku/src/system/kernel/debug/debug_commands.h (revision cda5b8808fd0262f0fac472f6cfa809f846a83cf)
1 /*
2  * Copyright 2008, Ingo Weinhold, ingo_weinhold@gmx.de
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef _KERNEL_DEBUG_COMMANDS_H
6 #define _KERNEL_DEBUG_COMMANDS_H
7 
8 
9 #include <SupportDefs.h>
10 
11 
12 struct debugger_command {
13 	struct debugger_command* next;
14 	int				(*func)(int, char **);
15 	const char*		name;
16 	const char*		description;
17 	const char*		usage;
18 	uint32			flags;
19 };
20 
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24 
25 debugger_command* next_debugger_command(debugger_command* command,
26 	const char* prefix, int prefixLen);
27 debugger_command* find_debugger_command(const char* name, bool partialMatch,
28 	bool& ambiguous);
29 bool in_command_invocation(void);
30 
31 int invoke_debugger_command(struct debugger_command *command, int argc,
32 	char** argv);
33 
34 debugger_command* get_debugger_commands();
35 void sort_debugger_commands();
36 
37 #ifdef __cplusplus
38 }	// extern "C"
39 #endif
40 
41 
42 #endif	// _KERNEL_DEBUG_COMMANDS_H
43