umbrello  2.34.3
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
perlwriter.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3 
4  SPDX-FileCopyrightText: 2003 David Hugh-Jones <hughjonesd@yahoo.co.uk>
5  SPDX-FileCopyrightText: 2004-2021 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
6 */
7 
8 #ifndef PERLWRITER_H
9 #define PERLWRITER_H
10 
11 #include "simplecodegenerator.h"
12 #include "umlattributelist.h"
13 #include "umloperationlist.h"
14 
15 class UMLOperation;
16 class UMLAttribute;
17 class UMLClassifier;
18 
24 {
25  Q_OBJECT
26 public:
27 
28  PerlWriter();
29  virtual ~PerlWriter();
30 
31  virtual void writeClass(UMLClassifier *c);
32 
34 
35  virtual QStringList reservedKeywords() const;
36 
37  QStringList defaultDatatypes() const;
38 
39 private:
40  void writeOperations(UMLClassifier *c, QTextStream &perl);
41  void writeOperations(const QString &classname, UMLOperationList &opList,
42  QTextStream &perl);
43 
44  void writeAttributes(UMLClassifier *c, QTextStream &perl);
45  void writeAttributes(UMLAttributeList &atList, QTextStream &perl);
46 
47  bool GetUseStatements(UMLClassifier *c, QString &Ret,
48  QString &ThisPkgName);
49 
50 };
51 
52 #endif //PERLWRITER
PerlWriter::GetUseStatements
bool GetUseStatements(UMLClassifier *c, QString &Ret, QString &ThisPkgName)
Definition: perlwriter.cpp:275
umlattributelist.h
Uml::ProgrammingLanguage::Perl
@ Perl
Definition: basictypes.h:302
SimpleCodeGenerator::m_indentation
QString m_indentation
Definition: simplecodegenerator.h:72
Uml::ProgrammingLanguage::Enum
Enum
Definition: basictypes.h:291
UMLAttributeList
Definition: umlattributelist.h:20
UMLObject::name
QString name() const
Definition: umlobject.cpp:207
umloperationlist.h
CodeGenerator::getHeadingFile
virtual QString getHeadingFile(const QString &file)
Definition: codegenerator.cpp:406
UMLObject::package
QString package(const QString &separator=QString(), bool includeRoot=false) const
Definition: umlobject.cpp:582
UMLOperation::getParmList
UMLAttributeList getParmList() const
Definition: operation.cpp:177
includes
Definition: includes.h:3
CodeGenerator::cleanName
static QString cleanName(const QString &name)
Definition: codegenerator.cpp:548
operation.h
UMLAttribute::getInitialValue
QString getInitialValue() const
Definition: attribute.cpp:100
UMLClassifierListItem::getTypeName
virtual QString getTypeName() const
Definition: classifierlistitem.cpp:108
CodeGenerator::findObjectsRelated
static void findObjectsRelated(UMLClassifier *c, UMLPackageList &cList)
Definition: codegenerator.cpp:621
UMLApp::commonPolicy
CodeGenerationPolicy * commonPolicy() const
Definition: uml.cpp:2383
association.h
SimpleCodeGenerator::hasDefaultValueAttr
bool hasDefaultValueAttr(UMLClassifier *c)
Definition: simplecodegenerator.cpp:251
UMLClassifierList
QList< UMLClassifier * > UMLClassifierList
Definition: umlclassifierlist.h:12
PerlWriter::writeClass
virtual void writeClass(UMLClassifier *c)
Definition: perlwriter.cpp:328
PerlWriter::~PerlWriter
virtual ~PerlWriter()
Definition: perlwriter.cpp:271
PerlWriter::writeOperations
void writeOperations(UMLClassifier *c, QTextStream &perl)
Definition: perlwriter.cpp:510
Uml::ModelType::toString
QString toString(Enum item)
Definition: basictypes.cpp:33
CodeGenerator::forceDoc
bool forceDoc() const
Definition: codegenerator.cpp:764
CodeGenerator::formatSourceCode
static QString formatSourceCode(const QString &code, const QString &indentation)
Definition: codegenerator.cpp:742
Uml::Visibility::Public
@ Public
Definition: basictypes.h:46
CodeGenerator::showGeneratedFile
void showGeneratedFile(const QString &filename)
Definition: moc_codegenerator.cpp:181
UMLObject::visibility
Uml::Visibility::Enum visibility() const
Definition: umlobject.cpp:462
attribute.h
SimpleCodeGenerator::m_endl
QString m_endl
Definition: simplecodegenerator.h:74
PerlWriter::defaultDatatypes
QStringList defaultDatatypes() const
Definition: perlwriter.cpp:716
PerlWriter::language
virtual Uml::ProgrammingLanguage::Enum language() const
Definition: perlwriter.cpp:497
CodeGenerationPolicy
Definition: codegenerationpolicy.h:25
SimpleCodeGenerator
Definition: simplecodegenerator.h:29
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
UMLObject::doc
QString doc() const
Definition: umlobject.cpp:431
UMLApp::app
static UMLApp * app()
Definition: uml.cpp:276
UMLAttribute
Sets up attribute information.
Definition: attribute.h:22
UMLObject::isUMLDatatype
bool isUMLDatatype() const
Definition: umlobject.h:204
UMLPackageList
QList< UMLPackage * > UMLPackageList
Definition: umlpackagelist.h:11
logWarn0
#define logWarn0(s)
Definition: uml.h:536
CodeGenerator::codeGenerated
void codeGenerated(UMLClassifier *concept, bool generated)
Definition: moc_codegenerator.cpp:167
classifier.h
UMLOperation
Definition: operation.h:19
PerlWriter
Definition: perlwriter.h:23
uml.h
reserved_words
static const char * reserved_words[]
Definition: perlwriter.cpp:23
CodeGenerationPolicy::setOutputDirectory
void setOutputDirectory(QDir new_var)
Definition: codegenerationpolicy.cpp:197
UMLClassifier
Information for a non-graphical Concept/Class.
Definition: classifier.h:34
PerlWriter::reservedKeywords
virtual QStringList reservedKeywords() const
Definition: perlwriter.cpp:729
perlwriter.h
CodeGenerationPolicy::getOutputDirectory
QDir getOutputDirectory()
Definition: codegenerationpolicy.cpp:207
PerlWriter::writeAttributes
void writeAttributes(UMLClassifier *c, QTextStream &perl)
Definition: perlwriter.cpp:653
simplecodegenerator.h
Uml::Visibility::Private
@ Private
Definition: basictypes.h:47
PerlWriter::PerlWriter
PerlWriter()
Definition: perlwriter.cpp:267
CodeGenerator::forceSections
bool forceSections() const
Definition: codegenerator.cpp:774
Uml::Visibility::Protected
@ Protected
Definition: basictypes.h:48
UMLOperationList
QList< UMLOperation * > UMLOperationList
Definition: umloperationlist.h:12
UMLAssociationList
QList< UMLAssociation * > UMLAssociationList
Definition: umlassociationlist.h:12
SimpleCodeGenerator::findFileName
QString findFileName(UMLPackage *concept, const QString &ext)
Definition: simplecodegenerator.cpp:87
umldoc.h
CodeGenerator::openFile
bool openFile(QFile &file, const QString &name)
Definition: codegenerator.cpp:522
UMLOperation::getSourceCode
QString getSourceCode() const
Definition: operation.cpp:523
UMLPackage
Non-graphical information for a Package.
Definition: package.h:27