umbrello 25.04.3
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
JavaImport Class Reference

#include <javaimport.h>

Inheritance diagram for JavaImport:
NativeImportBase ClassImport

Public Member Functions

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

Protected Member Functions

void initVars ()
bool parseStmt ()
void fillSource (const QString &word)
bool parseFile (const QString &filename)
UMLObjectresolveClass (const QString &className)
void spawnImport (const QString &file)
QString joinTypename (const QString &typeName)
Protected Member Functions inherited from NativeImportBase
void initialize ()
void setMultiLineComment (const QString &intro, const QString &end)
void setMultiLineAltComment (const QString &intro, const QString &end)
void scan (const QString &line)
virtual bool preprocess (QString &line)
virtual QStringList split (const QString &line)
void skipStmt (const QString &until=QStringLiteral(";"))
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_isStatic
 static flag for the member var or method
QString m_currentFileName
 current filename being parsed
QString m_currentPackage
 current package of the file being parsed
QStringList m_imports
 imports included in the current file
Uml::Visibility::Enum m_defaultCurrentAccess
 current visibility for when the visibility is absent
Protected Attributes inherited from NativeImportBase
QString m_singleLineCommentIntro
 start token of a single line comment
QStringList m_source
 the scanned lexemes
int m_srcIndex
 used for indexing m_source
QList< UMLPackage * > m_scope
 stack of scopes for use by the specific importer
UMLClassifierm_klass
 class currently being processed
Uml::Visibility::Enum m_currentAccess
 current access (public/protected/private)
QString m_comment
 intermediate accumulator for comment text
bool m_inComment
bool m_isAbstract
 accumulator for abstractness
QString m_multiLineCommentIntro
 multi line comment delimiter intro
QString m_multiLineCommentEnd
 multi line comment delimiter end
QString m_multiLineAltCommentIntro
QString m_multiLineAltCommentEnd
Protected Attributes inherited from ClassImport
CodeImpThreadm_thread
 thread in which the work of importing is done
bool m_enabled
 state of importer
QString m_rootPath
 root path of import

Static Protected Attributes

static QStringList s_filesAlreadyParsed
static int s_parseDepth = 0
Static Protected Attributes inherited from NativeImportBase
static QStringList m_parsedFiles

Static Private Member Functions

static UMLObjectfindObject (const QString &name, UMLPackage *parentPkg)

Additional Inherited Members

Static Public Member Functions inherited from ClassImport
static ClassImportcreateImporterByFileExt (const QString &fileName, CodeImpThread *thread=nullptr)

Detailed Description

Java code import

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

Constructor & Destructor Documentation

◆ JavaImport()

JavaImport::JavaImport ( CodeImpThread * thread = nullptr)
explicit

Constructor.

◆ ~JavaImport()

JavaImport::~JavaImport ( )
virtual

Destructor.

Member Function Documentation

◆ fillSource()

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

Implement abstract operation from NativeImportBase.

Parameters
wordwhitespace delimited item

Implements NativeImportBase.

◆ findObject()

UMLObject * JavaImport::findObject ( const QString & name,
UMLPackage * parentPkg )
staticprivate

Returns the UML Object if found, or null otherwise.

Parameters
namename of the uml object
parentPkgparent package
Returns
null or the uml objecct

◆ initVars()

void JavaImport::initVars ( )
protectedvirtual

Reimplement operation from NativeImportBase.

Reimplemented from NativeImportBase.

◆ joinTypename()

QString JavaImport::joinTypename ( const QString & typeName)
protected

Figure out if the type is really an array or template of the given typeName. Catenate possible template arguments/array dimensions to the end of the type name.

Parameters
typeNamethe type name
Returns
the type name with the additional information

◆ parseFile()

bool JavaImport::parseFile ( const QString & filename)
protectedvirtual

Keep track of the current file being parsed and reset the list of imports.

Parameters
filenamethe name of the file being parsed

Reimplemented from NativeImportBase.

◆ parseStmt()

bool JavaImport::parseStmt ( )
protectedvirtual

Implement abstract operation from NativeImportBase.

Returns
success status of operation

Implements NativeImportBase.

◆ resolveClass()

UMLObject * JavaImport::resolveClass ( const QString & className)
protected

Try to resolve the specified class the current class depends on.

Parameters
classNamethe name of the class

◆ spawnImport()

void JavaImport::spawnImport ( const QString & file)
protected

Spawn off an import of the specified file.

Parameters
filethe specified file

Member Data Documentation

◆ m_currentFileName

QString JavaImport::m_currentFileName
protected

current filename being parsed

◆ m_currentPackage

QString JavaImport::m_currentPackage
protected

current package of the file being parsed

◆ m_defaultCurrentAccess

Uml::Visibility::Enum JavaImport::m_defaultCurrentAccess
protected

current visibility for when the visibility is absent

◆ m_imports

QStringList JavaImport::m_imports
protected

imports included in the current file

◆ m_isStatic

bool JavaImport::m_isStatic
protected

static flag for the member var or method

◆ s_filesAlreadyParsed

QStringList JavaImport::s_filesAlreadyParsed
staticprotected

Keep track of the files we have already parsed so we don't reparse the same ones over and over again.

◆ s_parseDepth

int JavaImport::s_parseDepth = 0
staticprotected

Keep track of the parses so that the filesAlreadyParsed can be reset when we're done.


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