rubywriter.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef RUBYWRITER_H
00020 #define RUBYWRITER_H
00021
00022 #include "simplecodegenerator.h"
00023 #include "../umloperationlist.h"
00024 #include "../umlattributelist.h"
00025
00026 #include <qstringlist.h>
00027
00028 class ClassifierInfo;
00029
00034 class RubyWriter : public SimpleCodeGenerator {
00035 Q_OBJECT
00036 public:
00037
00038 RubyWriter();
00039 virtual ~RubyWriter();
00040
00045 virtual void writeClass(UMLClassifier *c);
00046
00050 virtual Uml::Programming_Language getLanguage();
00051
00055 virtual const QStringList reservedKeywords() const;
00056
00057 private:
00064 QString cppToRubyType(const QString &cppType);
00065
00072 QString cppToRubyName(const QString &cppName);
00073
00077 void writeAttributeMethods(UMLAttributeList *attribs,
00078 Uml::Visibility visibility, QTextStream &stream);
00079
00080
00085 void writeSingleAttributeAccessorMethods(const QString &fieldName,
00086 const QString &description,
00087 QTextStream &h);
00088
00095 void writeOperations(UMLClassifier *c, QTextStream &h);
00096
00104 void writeOperations(const QString &classname, UMLOperationList &opList,
00105 Uml::Visibility permitScope, QTextStream &h);
00106
00110 ClassifierInfo * classifierInfo;
00111 };
00112
00113 #endif //RUBYWRITER
This file is part of the documentation for umbrello Version 3.1.0.