umbrello: CsValaImportBase Class Reference

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

- Main Page
- Related Pages
- Topics
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions | Static Private Member Functions | List of all members
CsValaImportBase Class Reference

`#include <csvalaimportbase.h>`

Inheritance diagram for CsValaImportBase:

## Public Member Functions
| CsValaImportBase (CodeImpThread *thread=0)
virtual | ~CsValaImportBase ()
virtual QString | fileExtension ()
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 Member Functions
void | initVars ()
bool | parseStmt ()
void | fillSource (const QString &word)
bool | preprocess (QString &line)
bool | parseFile (const QString &filename)
UMLObject * | resolveClass (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 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)
UMLPackage * | popScope ()
UMLPackage * | currentScope ()
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
Uml::ProgrammingLanguage::Enum | m_language
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
UMLClassifier * | m_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
CodeImpThread * | m_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

## Private Member Functions
bool | parseUsingDirectives ()
bool | parseGlobalAttributes ()
bool | parseNamespaceMemberDeclarations ()
bool | parseAttributes ()
bool | parseClassDeclaration (const QString &keyword)
bool | parseStructDeclaration ()
bool | parseEnumDeclaration ()
bool | parseDelegateDeclaration ()
bool | isTypeDeclaration (const QString &keyword)
bool | isClassModifier (const QString &keyword)
bool | isCommonModifier (const QString &keyword)

## Static Private Member Functions
static UMLObject * | findObject (const QString &name, UMLPackage *parentPkg)

## Additional Inherited Members
Static Public Member Functions inherited from ClassImport
static ClassImport * | createImporterByFileExt (const QString &fileName, CodeImpThread *thread=0)

## Detailed Description

Base class for C# and Vala code import.

Author
  Andi Fischer (copied from JavaImport) 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

## ◆ CsValaImportBase()

CsValaImportBase::CsValaImportBase | ( | CodeImpThread * | thread = 0 | ) |
| explicit

Constructor.

## ◆ ~CsValaImportBase()

CsValaImportBase::~CsValaImportBase | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

## ◆ fileExtension()

QString CsValaImportBase::fileExtension | ( |  | ) |
| virtual

Reimplemented in CSharpImport, and ValaImport.

## ◆ fillSource()

void CsValaImportBase::fillSource | ( | const QString & | word | ) |
| protectedvirtual

Implement abstract operation from NativeImportBase.

Parameters

  word | whitespace delimited item

Implements NativeImportBase.

## ◆ findObject()

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

Returns the UML Object if found, or null otherwise.

Parameters

  name | name of the uml object
  parentPkg | parent package

Returns
  null or the uml objecct

## ◆ initVars()

void CsValaImportBase::initVars | ( |  | ) |
| protectedvirtual

Reimplement operation from NativeImportBase.

Reimplemented from NativeImportBase.

## ◆ isClassModifier()

bool CsValaImportBase::isClassModifier | ( | const QString & | keyword | ) |
| private

Check if keyword is a class-modifier.

Returns
  result of check

## ◆ isCommonModifier()

bool CsValaImportBase::isCommonModifier | ( | const QString & | keyword | ) |
| private

Check if keyword is an interface, struct, enum or delegate modifier.

Returns
  result of check

## ◆ isTypeDeclaration()

bool CsValaImportBase::isTypeDeclaration | ( | const QString & | keyword | ) |
| private

Check if keyword is belonging to a type-declaration.

Returns
  result of check

## ◆ joinTypename()

QString CsValaImportBase::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

  typeName | the type name

Returns
  the type name with the additional information

## ◆ parseAttributes()

bool CsValaImportBase::parseAttributes | ( |  | ) |
| private

Parsing attributes.

Returns
  success status of parsing

## ◆ parseClassDeclaration()

bool CsValaImportBase::parseClassDeclaration | ( | const QString & | keyword | ) |
| private

Parsing the statement 'class' or 'interface'.

Returns
  success status of parsing

## ◆ parseDelegateDeclaration()

bool CsValaImportBase::parseDelegateDeclaration | ( |  | ) |
| private

Parsing a delegate-declaration.

Returns
  success status of parsing

## ◆ parseEnumDeclaration()

bool CsValaImportBase::parseEnumDeclaration | ( |  | ) |
| private

Parsing the statement 'enum'.

Returns
  success status of parsing

## ◆ parseFile()

bool CsValaImportBase::parseFile | ( | const QString & | filename | ) |
| protectedvirtual

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

Parameters

  filename | the name of the file being parsed

Reimplemented from NativeImportBase.

## ◆ parseGlobalAttributes()

bool CsValaImportBase::parseGlobalAttributes | ( |  | ) |
| private

Parsing global attributes.

Returns
  success status of parsing

## ◆ parseNamespaceMemberDeclarations()

bool CsValaImportBase::parseNamespaceMemberDeclarations | ( |  | ) |
| private

Parsing the statement 'namespace'.

Returns
  success status of parsing

## ◆ parseStmt()

bool CsValaImportBase::parseStmt | ( |  | ) |
| protectedvirtual

Implement abstract operation from NativeImportBase. compilation-unit: using-directives? global-attributes? namespace-member-declarations?

Returns
  success status of operation

Implements NativeImportBase.

## ◆ parseStructDeclaration()

bool CsValaImportBase::parseStructDeclaration | ( |  | ) |
| private

Parsing a struct-declaration.

Returns
  success status of parsing

## ◆ parseUsingDirectives()

bool CsValaImportBase::parseUsingDirectives | ( |  | ) |
| private

Parsing the statement 'using'. Keep track of imports so we can resolve classes we are dependent on.

Returns
  success status of parsing

## ◆ preprocess()

bool CsValaImportBase::preprocess | ( | QString & | line | ) |
| protectedvirtual

Override operation from NativeImportBase.

Reimplemented from NativeImportBase.

## ◆ resolveClass()

UMLObject * CsValaImportBase::resolveClass | ( | const QString & | className | ) |
| protected

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

Parameters

  className | the name of the class

## ◆ spawnImport()

void CsValaImportBase::spawnImport | ( | const QString & | file | ) |
| protected

Spawn off an import of the specified file.

Parameters

  file | the specified file

## Member Data Documentation

## ◆ m_currentFileName

QString CsValaImportBase::m_currentFileName
| protected

current filename being parsed

## ◆ m_currentPackage

QString CsValaImportBase::m_currentPackage
| protected

current package of the file being parsed

## ◆ m_defaultCurrentAccess

Uml::Visibility::Enum CsValaImportBase::m_defaultCurrentAccess
| protected

current visibility for when the visibility is absent

## ◆ m_imports

QStringList CsValaImportBase::m_imports
| protected

imports included in the current file

## ◆ m_isStatic

bool CsValaImportBase::m_isStatic
| protected

static flag for the member var or method

## ◆ m_language

Uml::ProgrammingLanguage::Enum CsValaImportBase::m_language
| protected

required for language specific suport

## ◆ s_filesAlreadyParsed

QStringList CsValaImportBase::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 CsValaImportBase::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:

- umbrello/codeimport/csvalaimportbase.h
- umbrello/codeimport/csvalaimportbase.cpp