1
/***************************************************************************
2
perlparser.h - description
5
copyright : (C) 2003 by luc
7
***************************************************************************/
9
/***************************************************************************
11
* This program is free software; you can redistribute it and/or modify *
12
* it under the terms of the GNU General Public License as published by *
13
* the Free Software Foundation; either version 2 of the License, or *
14
* (at your option) any later version. *
16
***************************************************************************/
21
#include "kdevlanguagesupport.h"
22
#include <codemodel.h>
25
/**perl source to classview parser
31
perlparser(KDevCore* core,CodeModel* model, QString interpreter);
36
void parse(const QString &fileName);
37
void parseLines(QStringList* lines,const QString& fileName);
38
const QStringList UseFiles();
39
QString findLib( const QString& lib);
42
//global functions to add to ClassStore
43
void addPackage(const QString& fileName ,int lineNr , const QString& name);
44
void addAttributetoScript(const QString& fileName ,int lineNr ,const QString& name);
45
void addAttributetoPackage(const QString& fileName ,int lineNr ,const QString& name);
46
void addClass(const QString& fileName ,int lineNr );
47
void addConstructor(const QString& fileName ,int lineNr ,const QString& methodname);
48
void addGlobalSub(const QString& fileName ,int lineNr , const QString& name, bool privatesub);
49
void addScriptSub(const QString& fileName ,int lineNr , const QString& name, bool privatesub);
50
void addClassMethod(const QString& fileName ,int lineNr , const QString& name , bool privatesub);
51
void addPackageSub(const QString& fileName ,int lineNr , const QString& name, bool privatesub);
52
void addParentClass(const QString& parent);
53
void addScript(const QString& fileName ,int lineNr , const QString& name);
54
void addUseLib(const QString& lib);
62
QString m_lastparentclass;
64
QString m_lastpackagename;
65
QString m_lastscriptname;
67
NamespaceDom m_lastscript;
68
NamespaceDom m_lastpackage;
76
//this willhav a list of INC paths
77
QStringList m_INClist;
78
//this will get a list off all files "use" in the perl files
79
//and need additional parsing to include the classes in the classview
80
QStringList m_usefiles;
82
QString m_interpreter;