umbrello: umbrello/codeimport/pascalimport.h Source File

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

pascalimport.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) 2006-2020 *
8 * Umbrello UML Modeller Authors <umbrello-devel@kde.org> *
9 ***************************************************************************/
10
11 #ifndef PASCALIMPORT_H
12 #define PASCALIMPORT_H
13
14 #include "nativeimportbase.h"
15
21 class PascalImport : public NativeImportBase
22 {
23 public:
24 explicit PascalImport(CodeImpThread* thread = 0);
25 virtual ~PascalImport();
26
27 protected:
28 void initVars();
29
30 bool parseStmt();
31
32 void fillSource(const QString& word);
33
34 void checkModifiers(bool& isVirtual, bool& isAbstract);
35
36 bool m_inInterface;
37
38 enum Section_Type { sect_NONE, sect_LABEL, sect_CONST, sect_RESOURCESTRING,
39 sect_TYPE, sect_VAR, sect_THREADVAR };
40
41 Section_Type m_section;
42 };
43
44 #endif
45
NativeImportBase::scopeIndex
int scopeIndex()
Definition: nativeimportbase.cpp:176
UMLObject::asUMLClassifier
UMLClassifier * asUMLClassifier()
Definition: umlobject.cpp:1308
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:426
UMLObject::ObjectType
ObjectType
Definition: umlobject.h:80
NativeImportBase::m_currentAccess
Uml::Visibility::Enum m_currentAccess
current access (public/protected/private)
Definition: nativeimportbase.h:99
Uml::ParameterDirection::In
@ In
Definition: basictypes.h:257
PascalImport::sect_LABEL
@ sect_LABEL
Definition: pascalimport.h:38
UMLAttribute::setParmKind
void setParmKind(Uml::ParameterDirection::Enum pk)
Definition: attribute.cpp:117
UMLObject::asUMLAttribute
UMLAttribute * asUMLAttribute()
Definition: umlobject.cpp:1304
pascalimport.h
PascalImport::sect_RESOURCESTRING
@ sect_RESOURCESTRING
Definition: pascalimport.h:38
UMLObject::ot_Class
@ ot_Class
Definition: umlobject.h:89
operation.h
Import_Utils::createGeneralization
UMLAssociation * createGeneralization(UMLClassifier *child, UMLClassifier *parent)
Definition: import_utils.cpp:603
PascalImport::initVars
void initVars()
Definition: pascalimport.cpp:50
NativeImportBase::setMultiLineAltComment
void setMultiLineAltComment(const QString &intro, const QString &end)
Definition: nativeimportbase.cpp:71
UMLObject::ot_Interface
@ ot_Interface
Definition: umlobject.h:86
PascalImport::parseStmt
bool parseStmt()
Definition: pascalimport.cpp:116
PascalImport::sect_TYPE
@ sect_TYPE
Definition: pascalimport.h:39
PascalImport::sect_THREADVAR
@ sect_THREADVAR
Definition: pascalimport.h:39
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:178
Uml::ParameterDirection::Enum
Enum
Definition: basictypes.h:256
NativeImportBase::m_klass
UMLClassifier * m_klass
class currently being processed
Definition: nativeimportbase.h:98
PascalImport::~PascalImport
virtual ~PascalImport()
Definition: pascalimport.cpp:43
UMLObject::ot_Package
@ ot_Package
Definition: umlobject.h:85
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:498
PascalImport::fillSource
void fillSource(const QString &word)
Definition: pascalimport.cpp:60
UMLObject
The base class for UML objects.
Definition: umlobject.h:74
NativeImportBase::setMultiLineComment
void setMultiLineComment(const QString &intro, const QString &end)
Definition: nativeimportbase.cpp:59
import_utils.h
UMLObject::asUMLEnum
UMLEnum * asUMLEnum()
Definition: umlobject.cpp:1315
Uml::ParameterDirection::InOut
@ InOut
Definition: basictypes.h:258
PascalImport
Definition: pascalimport.h:22
NativeImportBase::currentScope
UMLPackage * currentScope()
Definition: nativeimportbase.cpp:165
NativeImportBase::skipStmt
void skipStmt(const QString &until=QLatin1String(";"))
Definition: nativeimportbase.cpp:82
Uml::Visibility::Public
@ Public
Definition: basictypes.h:60
UMLAttribute::setInitialValue
void setInitialValue(const QString &iv)
Definition: attribute.cpp:109
Import_Utils::remapUMLEnum
UMLEnum * remapUMLEnum(UMLObject *ns, UMLPackage *currentScope)
Definition: import_utils.cpp:738
NativeImportBase::skipToClosing
bool skipToClosing(QChar opener)
Definition: nativeimportbase.cpp:97
PascalImport::Section_Type
Section_Type
Definition: pascalimport.h:38
attribute.h
NativeImportBase::popScope
UMLPackage * popScope()
Definition: nativeimportbase.cpp:153
NativeImportBase::m_source
QStringList m_source
the scanned lexemes
Definition: nativeimportbase.h:95
PascalImport::sect_CONST
@ sect_CONST
Definition: pascalimport.h:38
UMLObject::ot_Datatype
@ ot_Datatype
Definition: umlobject.h:87
PascalImport::sect_VAR
@ sect_VAR
Definition: pascalimport.h:39
PascalImport::m_inInterface
bool m_inInterface
becomes true when keyword "interface" is seen
Definition: pascalimport.h:36
Import_Utils::addMethodParameter
UMLAttribute * addMethodParameter(UMLOperation *method, const QString &type, const QString &name)
Definition: import_utils.cpp:572
uDebug
#define uDebug()
Definition: debug_utils.h:122
NativeImportBase::advance
virtual QString advance()
Definition: nativeimportbase.cpp:198
Uml::ParameterDirection::Out
@ Out
Definition: basictypes.h:259
UMLObject::setStereotype
void setStereotype(const QString &_name)
Definition: umlobject.cpp:527
NativeImportBase::m_comment
QString m_comment
intermediate accumulator for comment text
Definition: nativeimportbase.h:100
CodeImpThread
Definition: codeimpthread.h:36
Import_Utils::makeOperation
UMLOperation * makeOperation(UMLClassifier *parent, const QString &name)
Definition: import_utils.cpp:416
UMLAttribute
Sets up attribute information.
Definition: attribute.h:28
NativeImportBase
Base class for native implementations of language import.
Definition: nativeimportbase.h:45
PascalImport::checkModifiers
void checkModifiers(bool &isVirtual, bool &isAbstract)
Definition: pascalimport.cpp:91
PascalImport::m_section
Section_Type m_section
contains the current section
Definition: pascalimport.h:41
nativeimportbase.h
NativeImportBase::parseFile
virtual bool parseFile(const QString &filename)
Definition: nativeimportbase.cpp:417
Import_Utils::addEnumLiteral
void addEnumLiteral(UMLEnum *enumType, const QString &literal, const QString &comment, const QString &value)
Definition: import_utils.cpp:593
classifier.h
uError
#define uError()
Definition: debug_utils.h:123
UMLOperation
Definition: operation.h:25
UMLObject::ot_Enum
@ ot_Enum
Definition: umlobject.h:88
uml.h
UMLClassifier
Information for a non-graphical Concept/Class.
Definition: classifier.h:40
debug_utils.h
NativeImportBase::pushScope
void pushScope(UMLPackage *p)
Definition: nativeimportbase.cpp:143
NativeImportBase::lookAhead
QString lookAhead()
Definition: nativeimportbase.cpp:185
UMLObject::asUMLPackage
UMLPackage * asUMLPackage()
Definition: umlobject.cpp:1324
Uml::Visibility::Private
@ Private
Definition: basictypes.h:61
NativeImportBase::m_srcIndex
int m_srcIndex
used for indexing m_source
Definition: nativeimportbase.h:96
package.h
Uml::Visibility::Protected
@ Protected
Definition: basictypes.h:62
NativeImportBase::m_parsedFiles
static QStringList m_parsedFiles
Definition: nativeimportbase.h:115
UMLEnum
Non-graphical Information for an Enum.
Definition: enum.h:29
PascalImport::sect_NONE
@ sect_NONE
Definition: pascalimport.h:38
umldoc.h
PascalImport::PascalImport
PascalImport(CodeImpThread *thread=0)
Definition: pascalimport.cpp:33
enum.h