KDevelop API Documentation

gdbparser.h

Go to the documentation of this file.
00001 /***************************************************************************
00002     begin                : Tue Aug 17 1999
00003     copyright            : (C) 1999 by John Birch
00004     email                : jbb@kdevelop.org
00005  ***************************************************************************/
00006 
00007 /***************************************************************************
00008  *                                                                         *
00009  *   This program is free software; you can redistribute it and/or modify  *
00010  *   it under the terms of the GNU General Public License as published by  *
00011  *   the Free Software Foundation; either version 2 of the License, or     *
00012  *   (at your option) any later version.                                   *
00013  *                                                                         *
00014  ***************************************************************************/
00015 
00016 #ifndef _GDBPARSER_H_
00017 #define _GDBPARSER_H_
00018 
00019 #include "variablewidget.h"
00020 
00021 namespace GDBDebugger
00022 {
00023 
00024 class GDBParser
00025 {
00026 public:
00027     void parseData(TrimmableItem *parent, char *buf,
00028                    bool requested, bool params);
00029     DataType  determineType(char *buf) const;
00030 
00031     char *skipString(char *buf) const;
00032     char *skipQuotes(char *buf, char quote) const;
00033     char *skipDelim(char *buf, char open, char close) const;
00034 
00035     static GDBParser *getGDBParser();
00036     static void destroy();
00037 
00038 private:
00039     TrimmableItem *getItem(TrimmableItem *parent, DataType itemType,
00040                            const QString &varName, bool requested);
00041 
00042     void parseArray(TrimmableItem *parent, char *buf);
00043 
00044     char *skipTokenEnd(char *buf) const;
00045     char *skipTokenValue(char *buf) const;
00046     char *skipNextTokenStart(char *buf) const;
00047 
00048     QString getName(char **buf);
00049     QCString getValue(char **buf, bool requested);
00050     void setItem(TrimmableItem *parent, const QString &varName, DataType dataType,
00051                  const QCString &value, bool requested, bool params);
00052 
00053 protected:
00054     GDBParser();
00055     ~GDBParser();
00056     static GDBParser *GDBParser_;
00057 };
00058 
00059 }
00060 
00061 #endif
KDE Logo
This file is part of the documentation for KDevelop Version 3.1.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Tue Feb 22 09:22:29 2005 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2003