umbrello  2.32.2
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
pythonimport.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3  SPDX-FileCopyrightText: 2006-2020 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4 */
5 
6 #ifndef PYTHONIMPORT_H
7 #define PYTHONIMPORT_H
8 
9 #include "nativeimportbase.h"
10 
11 class UMLOperation;
12 
19 {
20 public:
21  explicit PythonImport(CodeImpThread* thread = 0);
22  virtual ~PythonImport();
23 
24 protected:
25  void initVars();
26 
27  bool parseInitializer(const QString &keyword, QString &type, QString &value);
28  bool parseAssignmentStmt(const QString &keyword);
29 
31  bool parseStmt();
32 
33  void fillSource(const QString& line);
34 
35  bool preprocess(QString& line);
36 
37  QString indentation(int level);
38 
39  QString skipBody();
40 
45  int m_srcIndent[100];
46 
51 
53  bool m_isStatic;
54 };
55 
56 #endif
57 
NativeImportBase::scopeIndex
int scopeIndex()
Definition: nativeimportbase.cpp:171
pythonimport.h
UMLObject::asUMLClassifier
UMLClassifier * asUMLClassifier()
Definition: umlobject.cpp:1389
PythonImport::skipBody
QString skipBody()
Definition: pythonimport.cpp:164
Import_Utils::insertAttribute
UMLAttribute * insertAttribute(UMLClassifier *owner, Uml::Visibility::Enum scope, const QString &name, UMLClassifier *attrType, const QString &comment, bool isStatic)
Definition: import_utils.cpp:421
umlpackagelist.h
ClassImport::log
void log(const QString &file, const QString &text)
Definition: classimport.cpp:128
PythonImport::PythonImport
PythonImport(CodeImpThread *thread=0)
Definition: pythonimport.cpp:28
UMLObject::asUMLAttribute
UMLAttribute * asUMLAttribute()
Definition: umlobject.cpp:1385
NativeImportBase::preprocess
virtual bool preprocess(QString &line)
Definition: nativeimportbase.cpp:221
UMLObject::ot_Class
@ ot_Class
Definition: umlobject.h:85
operation.h
Import_Utils::createGeneralization
UMLAssociation * createGeneralization(UMLClassifier *child, UMLClassifier *parent)
Definition: import_utils.cpp:598
PythonImport::m_isStatic
bool m_isStatic
Flag denoting staticness of defined method.
Definition: pythonimport.h:53
Import_Utils::createUMLObject
UMLObject * createUMLObject(UMLObject::ObjectType type, const QString &inName, UMLPackage *parentPkg, const QString &comment, const QString &stereotype, bool searchInParentPackageOnly, bool remapParent)
Definition: import_utils.cpp:173
PythonImport::~PythonImport
virtual ~PythonImport()
Definition: pythonimport.cpp:38
NativeImportBase::m_klass
UMLClassifier * m_klass
class currently being processed
Definition: nativeimportbase.h:93
Import_Utils::insertMethod
void insertMethod(UMLClassifier *klass, UMLOperation *&op, Uml::Visibility::Enum scope, const QString &type, bool isStatic, bool isAbstract, bool isFriend, bool isConstructor, bool isDestructor, const QString &comment)
Definition: import_utils.cpp:493
PythonImport::preprocess
bool preprocess(QString &line)
Definition: pythonimport.cpp:63
PythonImport::m_braceWasOpened
bool m_braceWasOpened
Flag denoting the opening of a block.
Definition: pythonimport.h:52
PythonImport::m_srcIndent
int m_srcIndent[100]
Definition: pythonimport.h:45
UMLObject
The base class for UML objects.
Definition: umlobject.h:69
NativeImportBase::setMultiLineComment
void setMultiLineComment(const QString &intro, const QString &end)
Definition: nativeimportbase.cpp:54
import_utils.h
NativeImportBase::currentScope
UMLPackage * currentScope()
Definition: nativeimportbase.cpp:160
UMLClassifierListItem::setTypeName
void setTypeName(const QString &type)
Definition: classifierlistitem.cpp:137
NativeImportBase::skipStmt
void skipStmt(const QString &until=QLatin1String(";"))
Definition: nativeimportbase.cpp:77
UMLObject::hasDoc
bool hasDoc() const
Definition: umlobject.cpp:440
Uml::Visibility::Public
@ Public
Definition: basictypes.h:46
UMLAttribute::setInitialValue
void setInitialValue(const QString &iv)
Definition: attribute.cpp:104
NativeImportBase::skipToClosing
bool skipToClosing(QChar opener)
Definition: nativeimportbase.cpp:92
PythonImport::initVars
void initVars()
Definition: pythonimport.cpp:45
UMLOperation::setSourceCode
void setSourceCode(const QString &code)
Definition: operation.cpp:494
attribute.h
NativeImportBase::popScope
UMLPackage * popScope()
Definition: nativeimportbase.cpp:148
PythonImport::m_srcIndentIndex
int m_srcIndentIndex
Definition: pythonimport.h:50
a
QString a
Definition: petalnode.cpp:13
NativeImportBase::m_source
QStringList m_source
the scanned lexemes
Definition: nativeimportbase.h:90
PythonImport::parseStmt
bool parseStmt()
Definition: pythonimport.cpp:343
Import_Utils::addMethodParameter
UMLAttribute * addMethodParameter(UMLOperation *method, const QString &type, const QString &name)
Definition: import_utils.cpp:567
uDebug
#define uDebug()
Definition: debug_utils.h:108
PythonImport::indentation
QString indentation(int level)
Definition: pythonimport.cpp:151
NativeImportBase::advance
virtual QString advance()
Definition: nativeimportbase.cpp:193
PythonImport::parseAssignmentStmt
bool parseAssignmentStmt(const QString &keyword)
Definition: pythonimport.cpp:272
NativeImportBase::m_comment
QString m_comment
intermediate accumulator for comment text
Definition: nativeimportbase.h:95
CodeImpThread
Definition: codeimpthread.h:21
c
type show c for details The hypothetical commands show w and show c should show the appropriate parts of the General Public License Of the commands you use may be called something other than show w and show c
Definition: GPL-2.0-only.txt:301
visibility
Definition: visibility.py:1
Import_Utils::makeOperation
UMLOperation * makeOperation(UMLClassifier *parent, const QString &name)
Definition: import_utils.cpp:411
UMLAttribute
Sets up attribute information.
Definition: attribute.h:22
NativeImportBase
Base class for native implementations of language import.
Definition: nativeimportbase.h:39
nativeimportbase.h
PythonImport
Definition: pythonimport.h:18
Uml::Visibility::Enum
Enum
Definition: basictypes.h:45
UMLObject::setDoc
void setDoc(const QString &d)
Definition: umlobject.cpp:450
classifier.h
uError
#define uError()
Definition: debug_utils.h:109
UMLOperation
Definition: operation.h:19
uml.h
PythonImport::parseMethodParameters
bool parseMethodParameters(UMLOperation *op)
Definition: pythonimport.cpp:311
debug_utils.h
NativeImportBase::pushScope
void pushScope(UMLPackage *p)
Definition: nativeimportbase.cpp:138
NativeImportBase::lookAhead
QString lookAhead()
Definition: nativeimportbase.cpp:180
NativeImportBase::m_singleLineCommentIntro
QString m_singleLineCommentIntro
start token of a single line comment
Definition: nativeimportbase.h:89
Uml::Visibility::Private
@ Private
Definition: basictypes.h:47
NativeImportBase::m_srcIndex
int m_srcIndex
used for indexing m_source
Definition: nativeimportbase.h:91
package.h
Uml::Visibility::Protected
@ Protected
Definition: basictypes.h:48
PythonImport::fillSource
void fillSource(const QString &line)
Definition: pythonimport.cpp:123
codeimpthread.h
umldoc.h
PythonImport::parseInitializer
bool parseInitializer(const QString &keyword, QString &type, QString &value)
Definition: pythonimport.cpp:212
enum.h