umbrello 2.34.70-5524f40e1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
PascalImport Class Reference

#include <pascalimport.h>

Inheritance diagram for PascalImport:
Collaboration diagram for PascalImport:

Public Member Functions

 PascalImport (CodeImpThread *thread=0)
 
virtual ~PascalImport ()
 
- Public Member Functions inherited from NativeImportBase
 NativeImportBase (const QString &singleLineCommentIntro, CodeImpThread *thread=0)
 
virtual ~NativeImportBase ()
 
- Public Member Functions inherited from ClassImport
 ClassImport (CodeImpThread *thread=0)
 
virtual ~ClassImport ()
 
bool importFiles (const QStringList &fileNames)
 
bool importFile (const QString &fileName)
 
void setRootPath (const QString &path)
 
bool enabled () const
 

Protected Types

enum  Section_Type {
  sect_NONE , sect_LABEL , sect_CONST , sect_RESOURCESTRING ,
  sect_TYPE , sect_VAR , sect_THREADVAR
}
 

Protected Member Functions

void initVars ()
 
bool parseStmt ()
 
QStringList split (const QString &line)
 
void fillSource (const QString &word)
 
void checkModifiers (bool &isVirtual, bool &isAbstract)
 
- Protected Member Functions inherited from NativeImportBase
void initialize ()
 
void setMultiLineComment (const QString &intro, const QString &end)
 
void setMultiLineAltComment (const QString &intro, const QString &end)
 
virtual bool parseFile (const QString &filename)
 
void scan (const QString &line)
 
virtual bool preprocess (QString &line)
 
void skipStmt (const QString &until=QLatin1String(";"))
 
bool skipToClosing (QChar opener)
 
QString current ()
 
QString lookAhead ()
 
virtual QString advance ()
 
void pushScope (UMLPackage *p)
 
UMLPackagepopScope ()
 
UMLPackagecurrentScope ()
 
int scopeIndex ()
 
- Protected Member Functions inherited from ClassImport
virtual void initPerFile ()
 
void log (const QString &file, const QString &text)
 
void log (const QString &text)
 

Protected Attributes

bool m_inInterface
 becomes true when keyword "interface" is seen More...
 
Section_Type m_section
 contains the current section More...
 
- Protected Attributes inherited from NativeImportBase
QString m_singleLineCommentIntro
 start token of a single line comment More...
 
QStringList m_source
 the scanned lexemes More...
 
int m_srcIndex
 used for indexing m_source More...
 
QList< UMLPackage * > m_scope
 stack of scopes for use by the specific importer More...
 
UMLClassifierm_klass
 class currently being processed More...
 
Uml::Visibility::Enum m_currentAccess
 current access (public/protected/private) More...
 
QString m_comment
 intermediate accumulator for comment text More...
 
bool m_inComment
 
bool m_isAbstract
 accumulator for abstractness More...
 
QString m_multiLineCommentIntro
 multi line comment delimiter intro More...
 
QString m_multiLineCommentEnd
 multi line comment delimiter end More...
 
QString m_multiLineAltCommentIntro
 
QString m_multiLineAltCommentEnd
 
- Protected Attributes inherited from ClassImport
CodeImpThreadm_thread
 thread in which the work of importing is done More...
 
bool m_enabled
 state of importer More...
 
QString m_rootPath
 root path of import More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ClassImport
static ClassImportcreateImporterByFileExt (const QString &fileName, CodeImpThread *thread=0)
 
- Static Protected Attributes inherited from NativeImportBase
static QStringList m_parsedFiles
 

Detailed Description

Pascal code import

Author
Oliver Kellogg Bugs and comments to umbre.nosp@m.llo-.nosp@m.devel.nosp@m.@kde.nosp@m..org or https://bugs.kde.org

Member Enumeration Documentation

◆ Section_Type

Enumerator
sect_NONE 
sect_LABEL 
sect_CONST 
sect_RESOURCESTRING 
sect_TYPE 
sect_VAR 
sect_THREADVAR 

Constructor & Destructor Documentation

◆ PascalImport()

PascalImport::PascalImport ( CodeImpThread thread = 0)
explicit

Constructor.

◆ ~PascalImport()

PascalImport::~PascalImport ( )
virtual

Destructor.

Member Function Documentation

◆ checkModifiers()

void PascalImport::checkModifiers ( bool &  isVirtual,
bool &  isAbstract 
)
protected

Check for, and skip over, all modifiers following a method. Set the output arguments on encountering abstract and/or virtual.

Parameters
isVirtualreturn value, set to true when "virtual" seen
isAbstractreturn value, set to true when "abstract" seen
Here is the call graph for this function:

◆ fillSource()

void PascalImport::fillSource ( const QString &  word)
protectedvirtual

Implement abstract operation from NativeImportBase.

Implements NativeImportBase.

◆ initVars()

void PascalImport::initVars ( )
protectedvirtual

Reimplement operation from NativeImportBase.

Reimplemented from NativeImportBase.

◆ parseStmt()

bool PascalImport::parseStmt ( )
protectedvirtual

Implement abstract operation from NativeImportBase.

Returns
success status of operation

Implements NativeImportBase.

Here is the call graph for this function:

◆ split()

QStringList PascalImport::split ( const QString &  line)
protectedvirtual

We need to reimplement the split operation from NativeImportBase because Delphi appears to support UUIDs with syntax such as ['{23170F69-40C1-278A-0000-000500100000}'] which the NativeImportBase implementation does not split properly.

Reimplemented from NativeImportBase.

Here is the call graph for this function:

Member Data Documentation

◆ m_inInterface

bool PascalImport::m_inInterface
protected

becomes true when keyword "interface" is seen

◆ m_section

Section_Type PascalImport::m_section
protected

contains the current section


The documentation for this class was generated from the following files: