umbrello: umbrello/codeimport/csharp/csharpimport.h Source File

umbrello 2.32.0 Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology

csharpimport.h
Go to the documentation of this file.
1 /***************************************************************************
2 * This program is free software; you can redistribute it and/or modify *
3 * it under the terms of the GNU General Public License as published by *
4 * the Free Software Foundation; either version 2 of the License, or *
5 * (at your option) any later version. *
6 * *
7 * copyright (C) 2011-2020 *
8 * Umbrello UML Modeller Authors <umbrello-devel@kde.org> *
9 ***************************************************************************/
10
11 #ifndef CSHARPIMPORT_H
12 #define CSHARPIMPORT_H
13
14 #include "nativeimportbase.h"
15
16 class UMLObject;
17
24 class CSharpImport : public NativeImportBase
25 {
26 public:
27 explicit CSharpImport(CodeImpThread* thread = 0);
28 virtual ~CSharpImport();
29
30 protected:
31 void initVars();
32
33 bool parseStmt();
34
35 void fillSource(const QString& word);
36
37 bool parseFile(const QString& filename);
38
39 UMLObject* resolveClass (const QString& className);
40
41 void spawnImport(const QString& file);
42
43 QString joinTypename(const QString& typeName);
44
45 bool m_isStatic;
46 QString m_currentFileName;
47 QString m_currentPackage;
48 QStringList m_imports;
49 Uml::Visibility::Enum m_defaultCurrentAccess;
50
55 static QStringList s_filesAlreadyParsed;
56
61 static int s_parseDepth;
62
63 private:
64 static UMLObject* findObject(const QString& name, UMLPackage *parentPkg);
65
66 bool parseUsingDirectives();
67 bool parseGlobalAttributes();
68 bool parseNamespaceMemberDeclarations();
69 bool parseAttributes();
70
71 // type-declaration
72 bool parseClassDeclaration(const QString& keyword);
73 bool parseStructDeclaration();
74 // bool parseInterfaceDeclaration();
75 bool parseEnumDeclaration();
76 bool parseDelegateDeclaration();
77
78 bool isTypeDeclaration(const QString& keyword);
79 bool isClassModifier(const QString& keyword);
80 bool isCommonModifier(const QString& keyword);
81
82 };
83
84 #endif
CSharpImport
Definition: csharpimport.h:25
CSharpImport::joinTypename
QString joinTypename(const QString &typeName)
Definition: csharpimport.cpp:68
CSharpImport::CSharpImport
CSharpImport(CodeImpThread *thread=0)
Definition: csharpimport.cpp:39
CSharpImport::parseGlobalAttributes
bool parseGlobalAttributes()
Definition: csharpimport.cpp:521
CSharpImport::m_currentPackage
QString m_currentPackage
current package of the file being parsed
Definition: csharpimport.h:47
CSharpImport::parseStructDeclaration
bool parseStructDeclaration()
Definition: csharpimport.cpp:666
CSharpImport::parseClassDeclaration
bool parseClassDeclaration(const QString &keyword)
Definition: csharpimport.cpp:691
CSharpImport::initVars
void initVars()
Definition: csharpimport.cpp:57
CSharpImport::parseFile
bool parseFile(const QString &filename)
Definition: csharpimport.cpp:233
CSharpImport::parseUsingDirectives
bool parseUsingDirectives()
Definition: csharpimport.cpp:502
CSharpImport::s_filesAlreadyParsed
static QStringList s_filesAlreadyParsed
Definition: csharpimport.h:55
CSharpImport::~CSharpImport
virtual ~CSharpImport()
Definition: csharpimport.cpp:50
CSharpImport::findObject
static UMLObject * findObject(const QString &name, UMLPackage *parentPkg)
Definition: csharpimport.cpp:138
CSharpImport::isTypeDeclaration
bool isTypeDeclaration(const QString &keyword)
Definition: csharpimport.cpp:556
CSharpImport::resolveClass
UMLObject * resolveClass(const QString &className)
Definition: csharpimport.cpp:149
CSharpImport::parseEnumDeclaration
bool parseEnumDeclaration()
Definition: csharpimport.cpp:622
CSharpImport::m_imports
QStringList m_imports
imports included in the current file
Definition: csharpimport.h:48
CSharpImport::s_parseDepth
static int s_parseDepth
Definition: csharpimport.h:61
CSharpImport::fillSource
void fillSource(const QString &word)
Definition: csharpimport.cpp:93
CSharpImport::parseAttributes
bool parseAttributes()
Definition: csharpimport.cpp:544
CSharpImport::spawnImport
void spawnImport(const QString &file)
Definition: csharpimport.cpp:117
CSharpImport::isClassModifier
bool isClassModifier(const QString &keyword)
Definition: csharpimport.cpp:575
CSharpImport::m_defaultCurrentAccess
Uml::Visibility::Enum m_defaultCurrentAccess
current visibility for when the visibility is absent
Definition: csharpimport.h:49
CSharpImport::parseDelegateDeclaration
bool parseDelegateDeclaration()
Definition: csharpimport.cpp:677
CSharpImport::m_currentFileName
QString m_currentFileName
current filename being parsed
Definition: csharpimport.h:46
CSharpImport::parseNamespaceMemberDeclarations
bool parseNamespaceMemberDeclarations()
Definition: csharpimport.cpp:531
CSharpImport::parseStmt
bool parseStmt()
Definition: csharpimport.cpp:263
CSharpImport::m_isStatic
bool m_isStatic
static flag for the member var or method
Definition: csharpimport.h:45
CSharpImport::isCommonModifier
bool isCommonModifier(const QString &keyword)
Definition: csharpimport.cpp:595
CodeImpThread
Definition: codeimpthread.h:36
NativeImportBase
Base class for native implementations of language import.
Definition: nativeimportbase.h:45
UMLObject
The base class for UML objects.
Definition: umlobject.h:75
UMLPackage
Non-graphical information for a Package.
Definition: package.h:33
Uml::Visibility::Enum
Enum
Definition: basictypes.h:59
nativeimportbase.h