umbrello 2.34.70-5524f40e1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
csvalaimportbase.h
Go to the documentation of this file.
1/*
2 SPDX-License-Identifier: GPL-2.0-or-later
3 SPDX-FileCopyrightText: 2011-2022 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4*/
5
6#ifndef CSVALAIMPORTBASE_H
7#define CSVALAIMPORTBASE_H
8
9#include "nativeimportbase.h"
10
11class UMLObject;
12
19{
20public:
21 explicit CsValaImportBase(CodeImpThread* thread = 0);
22 virtual ~CsValaImportBase();
23 virtual QString fileExtension();
24
25protected:
26 void initVars();
27
28 bool parseStmt();
29
30 void fillSource(const QString& word);
31
32 bool preprocess(QString& line);
33
34 bool parseFile(const QString& filename);
35
36 UMLObject* resolveClass (const QString& className);
37
38 void spawnImport(const QString& file);
39
40 QString joinTypename(const QString& typeName);
41
45 QStringList m_imports;
47
52 static QStringList s_filesAlreadyParsed;
53
58 static int s_parseDepth;
59
64
65private:
66 static UMLObject* findObject(const QString& name, UMLPackage *parentPkg);
67
71 bool parseAttributes();
72
73 // type-declaration
74 bool parseClassDeclaration(const QString& keyword);
76 // bool parseInterfaceDeclaration();
79
80 bool isTypeDeclaration(const QString& keyword);
81 bool isClassModifier(const QString& keyword);
82 bool isCommonModifier(const QString& keyword);
83
84};
85
86#endif
Definition: codeimpthread.h:22
Definition: csvalaimportbase.h:19
QString m_currentFileName
current filename being parsed
Definition: csvalaimportbase.h:43
void spawnImport(const QString &file)
Definition: csvalaimportbase.cpp:149
bool parseClassDeclaration(const QString &keyword)
Definition: csvalaimportbase.cpp:722
bool parseDelegateDeclaration()
Definition: csvalaimportbase.cpp:708
bool isCommonModifier(const QString &keyword)
Definition: csvalaimportbase.cpp:616
static UMLObject * findObject(const QString &name, UMLPackage *parentPkg)
Definition: csvalaimportbase.cpp:170
UMLObject * resolveClass(const QString &className)
Definition: csvalaimportbase.cpp:181
QStringList m_imports
imports included in the current file
Definition: csvalaimportbase.h:45
bool isTypeDeclaration(const QString &keyword)
Definition: csvalaimportbase.cpp:580
bool parseStmt()
Definition: csvalaimportbase.cpp:298
CsValaImportBase(CodeImpThread *thread=0)
Definition: csvalaimportbase.cpp:37
bool parseAttributes()
Definition: csvalaimportbase.cpp:568
Uml::ProgrammingLanguage::Enum m_language
Definition: csvalaimportbase.h:63
void fillSource(const QString &word)
Definition: csvalaimportbase.cpp:115
bool parseUsingDirectives()
Definition: csvalaimportbase.cpp:526
bool m_isStatic
static flag for the member var or method
Definition: csvalaimportbase.h:42
bool parseEnumDeclaration()
Definition: csvalaimportbase.cpp:653
virtual ~CsValaImportBase()
Definition: csvalaimportbase.cpp:49
static int s_parseDepth
Definition: csvalaimportbase.h:58
void initVars()
Definition: csvalaimportbase.cpp:61
static QStringList s_filesAlreadyParsed
Definition: csvalaimportbase.h:52
bool parseFile(const QString &filename)
Definition: csvalaimportbase.cpp:268
Uml::Visibility::Enum m_defaultCurrentAccess
current visibility for when the visibility is absent
Definition: csvalaimportbase.h:46
virtual QString fileExtension()
Definition: csvalaimportbase.cpp:53
QString m_currentPackage
current package of the file being parsed
Definition: csvalaimportbase.h:44
bool parseStructDeclaration()
Definition: csvalaimportbase.cpp:697
bool preprocess(QString &line)
Definition: csvalaimportbase.cpp:96
QString joinTypename(const QString &typeName)
Definition: csvalaimportbase.cpp:72
bool parseGlobalAttributes()
Definition: csvalaimportbase.cpp:545
bool parseNamespaceMemberDeclarations()
Definition: csvalaimportbase.cpp:555
bool isClassModifier(const QString &keyword)
Definition: csvalaimportbase.cpp:599
Base class for native implementations of language import.
Definition: nativeimportbase.h:40
The base class for UML objects.
Definition: umlobject.h:70
Non-graphical information for a Package.
Definition: package.h:28
Enum
Definition: basictypes.h:291
Enum
Definition: basictypes.h:45