Support to multi-threading and pthread interface (POSIX.1-2008) (#23)
[lunaix-os.git] / lunaix-os / scripts / gdb / lunadbg / commands.py
index 698ea85d80d5b7bc39809b89746f147349f3d615..9df5983dbe242b795d94ecd32d0c8f6fb302e62f 100644 (file)
@@ -1,8 +1,17 @@
-from .region_dump import MemoryRegionDump
-from .proc_table_dump import ProcessDump, ProcessTableDump
+from gdb import Command, COMMAND_USER
 
+import argparse
 
-def load_commands():
-    MemoryRegionDump()
-    ProcessTableDump()
-    ProcessDump()
\ No newline at end of file
+class LunadbgCommand(Command):
+    def __init__(self, name: str) -> None:
+        super().__init__(name, COMMAND_USER)
+        self._parser = argparse.ArgumentParser()
+
+    def _parse_args(self, gdb_argstr: str):
+        args, argv = self._parser.parse_known_args(gdb_argstr.strip().split(' '), None)
+        if argv:
+            print('unrecognized arguments: %s'%(' '.join(argv)))
+            print(self._parser.format_usage())
+            print(self._parser.format_help())
+            return None
+        return args
\ No newline at end of file