]> gitweb.hamatoma.de Git - reqt/commitdiff
dayly work
authorhama <hama@siduction.net>
Sun, 10 Aug 2014 00:40:26 +0000 (02:40 +0200)
committerhama <hama@siduction.net>
Sun, 10 Aug 2014 00:40:26 +0000 (02:40 +0200)
32 files changed:
rplcore/rplbytestorage.cpp
rplcore/rplcontainer.cpp
rplcore/rplexception.cpp
rplcore/rpllogger.cpp
rplcore/rplqstring.cpp
rplcore/rplstring.cpp
rplcore/rplterminator.cpp
rplcore/rpltest.cpp
rplcore/rplwriter.cpp
rplexpr/rplasclasses.cpp
rplexpr/rplastree.cpp
rplexpr/rplastree.hpp
rplexpr/rpllexer.cpp
rplexpr/rpllexer.hpp
rplexpr/rplmfparser.cpp
rplexpr/rplparser.cpp
rplexpr/rplsource.cpp
rplexpr/rplvm.cpp
rplmath/rplenigma.cpp
rplmath/rplmatrix.cpp
rplmath/rplrandom.cpp
rplnet/rpltcpclient.cpp
rplnet/rpltcpserver.cpp
unittests/rplastree_test.cpp
unittests/rplbytestorage_test.cpp
unittests/rpllexer_test.cpp
unittests/rplmatrix_test.cpp
unittests/rplmfparser_test.cpp
unittests/rplqstring_test.cpp
unittests/rplsource_test.cpp
unittests/rplstring_test.cpp
unittests/rplwriter_test.cpp

index 0230073920a7a9e377d8692b39e00a2a2dec25a9..4aca921cae4d26dcf7d671265e1b1927a5eb0172 100644 (file)
@@ -6,6 +6,14 @@
  * The original sources can be found on https://github.com/republib.
 */
 
+/** @file
+ *
+ * @brief A very efficient storage for bytes and C strings.
+ */
+/** @file rplcore/rplbytestorage.hpp
+ *
+ * @brief Definitions for a a very efficient storage for bytes and C strings.
+ */
 
 #include "rplcore/rplcore.hpp"
 
@@ -148,11 +156,11 @@ uint8_t* RplByteStorage::allocateZeros(int size)
 }
 
 /**
- * @brief Allocates a byte block.
+ * @brief Copy a byte block to a new allocated byte block.
  *
- * @param size  the size of the block to allocate
- *
- * @return  a byte block (without a trailing '\0')
+ * @param source    the source to copy
+ * @param size      the size of the block to allocate
+ * @return          a byte block (without a trailing '\0')
  */
 uint8_t* RplByteStorage::allocateBytes(void* source, int size)
 {
index 4a292ef9f818b2b2511fdc89a43fe43a050e92bc..5760dda36786f377225f619ed580426741ee8b70 100644 (file)
@@ -7,6 +7,10 @@
  */
 #include "rplcore/rplcore.hpp"
 
+/** @file
+ * @brief Implements a portable data container.
+ */
+
 /** @class RplContainer rplcontainer.hpp "rplcore/rplcontainer.hpp"
  *
  * @brief Implements a portable data container.
index fac6605c16851d3f9968dea80cd7f7fcccdecb97..16ffc29f2cd3c50a2227444c641a40e90ce96b2c 100644 (file)
@@ -7,12 +7,29 @@
  */
 /** @mainpage
  *
- * The rplcore directory contains the basic classes of the rplqt source.
- *
- * If you want to use any of the rplqt sources these rplcore classes
- * are necessary to include.
+ * @note A real public library for QT.
+ *
+ * This library contains the module groups
+ * <ul>
+ * <li>rplcore: basic definitions, used in all other module groups</li>
+ * <li>rplmath: mathematic definitions and tools</li>
+ * <li>rplexpr: definition for parsing and interpretation of languages</li>
+ * <li>rplnet: definitions and tools for tcp/udp communication</li>
+ * </ul>
+ *
+ * Each module group has a central include file, which organizes the necessary
+ * include files. You had to include only the central include file.
+ *
+ * Example:
+ * <pre><code>
+ * #include "rplcore/rplcore.hpp"
+ * #include "rplexpr/rplexpr.hpp"
+ * </code></pre>
+ * In this case all definitions of rplcore and rplexpr are available.
+ */
+/** @file
+ * @brief Generally usable exceptions.
  */
-
 #include "rplcore/rplcore.hpp"
 
 /** @class RplException rplexception.hpp "rplcore/rplexception.hpp"
index 0499c1a93ad45b325fee5460b3e476833c2235d4..f85bcae604384fc283b822ca30af13012d9fe249 100644 (file)
@@ -5,6 +5,10 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
  */
+
+/** @file
+ * A configurable logger for different output media.
+ */
 #include "rplcore/rplcore.hpp"
 #include <QDir>
 #include <iostream>
@@ -402,6 +406,11 @@ RplAppender* RplLogger::findAppender(const char* name) const {
  * @brief Builds the standard appender configured by a configuration file.
  *
  * @param config               configuration file
+ * @param prefix        the prefix of the key in the config file
+ *                      (in front of "name")
+ * @param defaultLogfilePrefix
+ *                      the prefix of the log file if no entry in the
+ *                      configuration file
  */
 void RplLogger::buildStandardAppender(RplConfig* config,
                                       const char* prefix,
index 90c156d7bc6351a63e909d6e703303c296762b01..664a1862479f66167c642be706e1f4cd99480326 100644 (file)
@@ -6,7 +6,9 @@
  * The original sources can be found on https://github.com/republib.
 */
 
-
+/** @file
+ * @brief Missed operation for <code>QString</code>s.
+ */
 #include "rplcore/rplcore.hpp"
 
 
index da2c2c9b6ab7d61abaa946868f1726cfa3c6063c..d98d746a2695543d4921f274d2f187e573d31895 100644 (file)
@@ -5,6 +5,9 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
  */
+/** @file
+ * @brief Missed operation for <code>QByteArray</code>s.
+ */
 #include "rplcore.hpp"
 
 /** @class RplString rplstring.hpp "rplcore/rplstring.hpp"
index 6b373aa253108def79772f761e035840fa983e6c..9270bef4aec71d5e3fcbb63f9ab9dc99324c0dbf 100644 (file)
@@ -5,6 +5,9 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
  */
+/** @file
+ * @brief Implements a thread stopper.
+ */
 #include "rplcore.hpp"
 
 enum {
index 3440f719081c2049655f979f3ff6168bbb8cbee7..340611bb805f3b74d8ee62fe87bc85a32a85140c 100644 (file)
@@ -5,6 +5,9 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
  */
+/** @file
+ * @brief A testing tool like JUnit.
+ */
 #include "rplcore/rplcore.hpp"
 #include "rpltest.hpp"
 
@@ -338,6 +341,8 @@ bool RplTest::assertNotNull(const void* ptr, const char* file, int lineNo) {
  *
  * @param expected  the file with the expected content
  * @param current   the file with the current content
+ * @param file      the source file (point of the comparison)
+ * @param lineNo    the source position (point of the comparison)
  * @return          true: the files are equal<br>
  *                  false: otherwise
  */
index eca58a6705ac37a6a886ee766afc52825cdb42ba..835655ff690cd36f4e96d676bdb547c49ccba86d 100644 (file)
@@ -6,6 +6,12 @@
  * The original sources can be found on https://github.com/republib.
 */
 
+/** @file
+ * @brief A writer to an output media.
+ *
+ * Implementation of the abstract base class <code>RplWriter</code> and
+ * the concrete derivation <code>RplFileWriter</code>.
+ */
 
 #include "rplcore/rplcore.hpp"
 
@@ -40,9 +46,9 @@ void RplWriter::close()
 {
 }
 /**
- * @brief Puts a given count of '\t' to the output medium.
+ * @brief Puts a given count of "\t" to the output medium.
  *
- * @param indent    indention level, number of '\t'
+ * @param indent    indention level, number of "\t"
  */
 void RplWriter::indent(int indent)
 {
@@ -86,8 +92,7 @@ void RplWriter::formatLine(const char* format, ...)
  * @brief Writes a line with indention to the output medium.
  *
  * @param indent    indention level. Indention is limited to 20
- * @param format    format string with placeholders like <code>sprintf()</code>
- * @param ...       variable arguments, values for the placeholders
+ * @param line      the line to write
  */
 void RplWriter::writeIndented(int indent, const char* line)
 {
@@ -99,7 +104,8 @@ void RplWriter::writeIndented(int indent, const char* line)
  * @brief Writes a line with indention to the output medium.
  *
  * @param indent    indention level. Indention is limited to 20
- * @param line      line to write (without '\n')
+ * @param format    format string with placeholders like <code>sprintf</code>
+ * @param ...       the values for the placeholders (variable arguments)
  */
 void RplWriter::formatIndented(int indent, const char* format, ...)
 {
@@ -123,6 +129,7 @@ void RplWriter::formatIndented(int indent, const char* format, ...)
  *
  * @param filename  the file's name
  * @param mode      write mode, "w" for write or "a" for append
+ * @param eoln      line end: "\n" or "\r\n"
  */
 RplFileWriter::RplFileWriter(const char* filename, const char* mode,
                              const char* eoln) :
index 39ea4e3850ee5087510a67e6fbbc02eb63b695de..479a3874c8c6c145ae3d00be23eb85a6feb2c9fc 100644 (file)
@@ -6,6 +6,9 @@
  * The original sources can be found on https://github.com/republib.
 */
 
+/** @file
+ * @brief Predefined classes of the virtual machine, e.g RplASInteger.
+ */
 
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
@@ -437,6 +440,7 @@ bool RplASBoolean::boolValueOf(void*) const
  * @brief Returns a string representation of an instance.
  *
  * @param object    the object to convert
+ * @param maxLength not used
  * @return          a string describing the <code>object</code>
  */
 QString RplASBoolean::toString(void* object, int) const
@@ -504,6 +508,7 @@ bool RplASFloat::boolValueOf(void*) const
  * @brief Returns a string representation of an instance.
  *
  * @param object    the object to convert
+ * @param maxLength not used
  * @return          a string describing the <code>object</code>
  */
 QString RplASFloat::toString(void* object, int) const
@@ -544,6 +549,7 @@ bool RplASInteger::boolValueOf(void*) const
  * @brief Returns a string representation of an instance.
  *
  * @param object    the object to convert
+ * @param maxLength the maximum length of the result
  * @return          a string describing the <code>object</code>
  */
 QString RplASInteger::toString(void* object, int maxLength) const
@@ -616,6 +622,7 @@ bool RplASString::boolValueOf(void* object) const
  * @brief Returns a string representation of an instance.
  *
  * @param object    the object to convert
+ * @param maxLength the maximum length of the result
  * @return          a string describing the <code>object</code>
  */
 QString RplASString::toString(void* object, int maxLength) const
@@ -709,6 +716,7 @@ bool RplASList::boolValueOf(void* object) const
  * @brief Returns a string representation of an instance.
  *
  * @param object    the object to convert
+ * @param maxLength unused
  * @return          a string describing the <code>object</code>
  */
 QString RplASList::toString(void* object, int maxLength) const
@@ -809,6 +817,7 @@ bool RplASMap::boolValueOf(void* object) const
  * @brief Returns a string representation of an instance.
  *
  * @param object    the object to convert
+ * @param maxLength maximal length of the result
  * @return          a string describing the <code>object</code>
  */
 QString RplASMap::toString(void* object, int maxLength) const
@@ -868,7 +877,6 @@ RplVariable::RplVariable(const QString& name) :
  *
  * @param writer    writes to output
  * @param indent    nesting level: so many tabs will be used as prefix
- * @param header    NULL or the headline
  */
 void RplVariable::dump(RplWriter& writer, int indent)
 {
@@ -940,6 +948,11 @@ QString RplASVoid::toString(void*, int) const
  * @brief Implements a data type representing a calculated value.
  */
 
+/**
+ * @brief Constructor.
+ *
+ * @param tree  the abstract syntax tree
+ */
 RplASFormula::RplASFormula(RplASTree& tree) :
     RplASClass("Formula", tree)
 {
@@ -950,7 +963,7 @@ RplASFormula::RplASFormula(RplASTree& tree) :
  *
  * In this case we do nothing.
  *
- * @param formula    ignored
+ * @param expr      the result
  * @return
  */
 void* RplASFormula::newValueInstance(void* expr) const
@@ -1005,6 +1018,8 @@ QString RplASFormula::toString(void* object, int) const
  * @brief Constructor.
  *
  * @param name      name of the user defined class
+ * @param position  the position of the class definition
+ * @param tree      the abstract syntax tree
  */
 RplASUserClass::RplASUserClass(const QString& name,
                                const RplSourcePosition* position,
index 21a4789690c50393815b161ba96d5c7b02b1176b..c894d7afa40bb6502fb1f4051e96b5275731ded5 100644 (file)
@@ -5,6 +5,11 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
 */
+/** @file
+ *
+ * @brief Implementation of an Abstract Syntax Tree.
+ *
+ */
 
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
@@ -54,12 +59,6 @@ void dumpMap(RplWriter& writer, RplASMapOfVariants& map, bool withEndOfLine)
  * @brief Implements a specific exception for the Abstract Syntax Tree.
  */
 
-/**
- * @brief RplASException::RplASException
- * @param message
- */
-
-
 /**
  * @brief Builds the message.
  *
@@ -95,11 +94,7 @@ RplASException::RplASException(const RplSourcePosition* position,
 }
 
 /**
- * @brief Builds the message.
- *
- * @param position  describes the position of the error/warning
- * @param format    the reason of the exception
- * @param varList   the values for the placeholders in the format.
+ * @brief Constructor.
  */
 RplASException::RplASException() :
     RplException("")
@@ -347,7 +342,7 @@ void RplASVariant::setBool(bool value)
 /**
  * @brief Make the instance to a boolean value.
  *
- * @param value    the string value.
+ * @param string    the string value.
  */
 void RplASVariant::setString(const QString& string)
 {
@@ -358,6 +353,7 @@ void RplASVariant::setString(const QString& string)
 /**
  * @brief Builds a string.
  *
+ * @param maxLength     the maximum length of the result
  * @return  the value as string
  */
 QString RplASVariant::toString(int maxLength) const
@@ -389,6 +385,7 @@ QString RplASVariant::toString(int maxLength) const
  * @brief Make the instance to an object.
  *
  * @param object    the class specific value object.
+ * @param clazz     the data type of the object
  */
 void RplASVariant::setObject(void* object, const RplASClass* clazz)
 {
@@ -760,6 +757,7 @@ const QString& RplASNamedValue::name() const
  * @brief Calculates the value.
  *
  * @param value     In/OUT: the value of the instance
+ * @param frame     not used
  * @return          NULL
  */
 RplASNode1* RplASNamedValue::calc(RplASVariant& , RplStackFrame* )
@@ -821,7 +819,7 @@ void RplASIndexedValue::dump(RplWriter& writer, int indent)
  *
  * @brief Implements variable definition for the Abstract Syntax Tree.
  *
- * <code>m_child</code>: next statement</br>
+ * <code>m_child</code>: next statement<br>
  * <code>m_child2</code>: named value (name + default value expression)
  * <code>m_child3</code>: initial value or NULL
  */
@@ -905,7 +903,7 @@ RplASNode1* RplASVarDefinition::calc(RplASVariant&)
  *
  * @brief Implements an statement consisting of an expression.
  *
- * <code>m_child</code>: next statement</br>
+ * <code>m_child</code>: next statement<br>
  * <code>m_child2</code>: expression
  */
 
@@ -1002,9 +1000,9 @@ void RplASNode1::setChild(RplASItem* child)
 /**
  * @brief Writes the internals of a statement list into a file.
  *
- * @param writer    writes to output media
- * @param indent    the indent level of the statement list
- * @param chain     the chain of statements to dump
+ * @param writer        writes to output media
+ * @param indent        the indent level of the statement list
+ * @param statements    the chain of statements to dump
  */
 void RplASNode1::dumpStatements(RplWriter& writer, int indent,
                                 RplASItem* statements)
@@ -1228,9 +1226,9 @@ RplASItem* RplASNode6::child6() const
 }
 
 /**
- * @brief Sets the child5.
+ * @brief Sets the child6.
  *
- * @param child5    the new child3
+ * @param child6    the new child6
  */
 void RplASNode6::setChild6(RplASItem* child6)
 {
@@ -1246,6 +1244,9 @@ void RplASNode6::setChild6(RplASItem* child6)
 
 /**
  * @brief Constructor.
+ *
+ * @param op    the operator id
+ * @param type  the node type
  */
 RplASUnaryOp::RplASUnaryOp(int op, RplASItemType type) :
     RplASNode1(type),
@@ -1292,8 +1293,7 @@ void RplASUnaryOp::dump(RplWriter& writer, int indent)
  */
 
 /**
- * @brief RplASStatement::RplASStatement
- * @param op
+ * @brief Constructor.
  */
 RplASStatement::RplASStatement()
 {
@@ -1379,7 +1379,7 @@ void RplASCondition::dump(RplWriter& writer, int indent)
  * If the condition is evaluated to true, the then-part will be executed.
  * Otherwise the else-part if it exists.
  *
- * <code>m_child</code>: next statement</br>
+ * <code>m_child</code>: next statement<br>
  * <code>m_child2</code>: condition<br>
  * <code>m_child3</code>: then part<br>
  * <code>m_child4</code>: else part or NULL<br>
@@ -1449,7 +1449,7 @@ void RplASIf::dump(RplWriter& writer, int indent)
  * Then the condition will be tested. If true the body will be executed
  * and then the forwarding statement.
  *
- * <code>m_child</code>: next statement</br>
+ * <code>m_child</code>: next statement<br>
  * <code>m_child2</code>: body<br>
  * <code>m_child3</code>: iterator variable<br>
  * <code>m_child4</code>: container variable<br>
@@ -1508,12 +1508,12 @@ void RplASForIterated::dump(RplWriter& writer, int indent)
  * The start and end value will be calculated.
  * The body will be executed so many times given by the start and end value.
  *
- * <code>m_child</code>: next statement</br>
+ * <code>m_child</code>: next statement<br>
  * <code>m_child2</code>: body<br>
  * <code>m_child3</code>: variable or NULL<br>
  * <code>m_child4</code>: start value or NULL<br>
  * <code>m_child5</code>: end value<br>
- * <code>m_child6</code>: step value or NULL<br>
+ * <code>m_child6</code>: step value or NULL
  *
  */
 
@@ -1587,7 +1587,7 @@ void RplASForCounted::dump(RplWriter& writer, int indent)
  * The while statement has an a condition and a body.
  * The body will be executed while the condition returns true.
  *
- * <code>m_child</code>: next statement</br>
+ * <code>m_child</code>: next statement<br>
  * <code>m_child2</code>: condition<br>
  * <code>m_child3</code>: body<br>
  */
@@ -1646,7 +1646,7 @@ void RplASWhile::dump(RplWriter& writer, int indent)
  * The while statement has an a condition and a body.
  * The body will be executed while the condition returns true.
  *
- * <code>m_child</code>: next statement</br>
+ * <code>m_child</code>: next statement<br>
  * <code>m_child2</code>: condition<br>
  * <code>m_child3</code>: body<br>
  */
@@ -1874,6 +1874,7 @@ void RplASTree::finishModule(const QString& name)
 /**
  * @brief Handles the start of a new class definition.
  * @param name      name of the class/method
+ * @param type      the symbol space type
  * @return          the new symbol space
  */
 RplSymbolSpace* RplASTree::startClassOrMethod(const QString& name,
@@ -1975,7 +1976,7 @@ void RplASTree::dump(const char* filename, int flags, const char* header)
  *
  * @brief Implements a method or function call for the Abstract Syntax Tree.
  *
- * <code>m_child</code>: next statement</br>
+ * <code>m_child</code>: next statement<br>
  * <code>m_child2</code>: argument list<br>
  * <code>m_child3</code>: parent (variable, field ...)
  */
@@ -2053,7 +2054,7 @@ RplASArgument* RplASMethodCall::arg1() const
  *
  * @brief Implements a call of a method or function.
  *
- * <code>m_child</code>: ???</br>
+ * <code>m_child</code>: body
  * <code>m_child2</code>: argument list (or NULL)
  */
 
@@ -2118,14 +2119,14 @@ void RplASBinaryOp::dump(RplWriter& writer, int indent)
  *
  * The special case "function" (a method without class) is included.
  *
- * <code>m_child</code>: body</br>
+ * <code>m_child</code>: body<br>
  * <code>m_child2</code>: parameter list (or NULL)
  */
 /**
  * @brief Constructor.
  *
  * @param name      the method name
- * @param type      the method result type
+ * @param tree      the abstract syntax tree
  */
 RplASMethod::RplASMethod(const QString& name, RplASTree& tree) :
     RplASNode2(AST_METHOD),
index cf36ecd23ef836af9bb2c0bbabc00f785c7d1d3c..742d6be88f86fc832d1d00c498deb8d217d703aa 100644 (file)
@@ -43,7 +43,7 @@ enum RplASItemType {
 class RplASException : public RplException {
 public:
     RplASException();
-    RplASException(const RplSourcePosition* position, const char* message, ...);
+    RplASException(const RplSourcePosition* position, const char* format, ...);
 protected:
     void build(const RplSourcePosition* position, const char* format,
                va_list varList);
@@ -138,7 +138,6 @@ public:
      *
      * @param writer    writes to output media
      * @param indent    nesting level: so many tabs will be used as prefix
-     * @param header    NULL or the headline
      */
     virtual void dump(RplWriter& writer,int indent) = 0;
 public:
@@ -552,6 +551,7 @@ public:
      * @brief Returns a string representation of an instance.
      *
      * @param object    the object to convert
+     * @param maxLength the maximum length of the result (string)
      * @return          a string describing the <code>object</code>
      */
     virtual QString toString(void *object, int maxLength = 80) const = 0;
index e8738cf0c22319040553abb227a87e621f12122a..286f05b30ea26fe47de3a044cab0440ca8f6ee4b 100644 (file)
@@ -5,6 +5,9 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
 */
+/** @file
+ * @brief Configurable scanner, wich separates syntactic symbols from an input media.
+ */
 
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
@@ -19,10 +22,6 @@ RplLexer* RplLexer::m_active = NULL;
  *
  */
 
-/**
- * @brief RplLexException::RplLexException
- * @param message
- */
 /**
  * @brief Constructor.
  *
@@ -317,13 +316,15 @@ static void charClassToCharInfo(const char* charClass, int flag,
  * @brief Constructor.
  *
  * @param source        the input source handler
- * @param keywords      a string with all keywords delimited by ' '.
+ * @param keywords      a string with all keywords delimited by " ".
  *                      Example: "if then else fi while do done"
- * @param operators     a string with the operators separated by blank or '\n'.
- *                      '\n' separates the operators with the same priority.
+ * @param operators     a string with the operators separated by blank or "\n".
+ *                      "\n" separates the operators with the same priority.
  *                      Lower position means lower priority
+ * @param rightAssociatives
+ *                      the operators which are right associative
  * @param comments      a string with pairs of comment begin and end delimited
- *                      by ' '. The comment end can be '\n' for line end.
+ *                      by " ". The comment end can be "\n" for line end.
  *                      Example: "/ * * / // \n" (ignore the blank in "* /")
  * @param firstCharsId  string with the characters which are allowed as first
  *                      characters of an id
index 5d23de7a168d0a2617beb986521686f932062357..68a419968beeeae760ea99cc17f1775ae0efaf10 100644 (file)
@@ -128,11 +128,11 @@ public:
         SF_TICK         = 1 << 1,
         /// " can be a string delimiter
         SF_QUOTE        = 1 << 2,
-        /// character escaping like in C: \<char> is <char>
+        /// character escaping like in C: "\x" is "x"
         SF_C_ESCAPING   = 1 << 3,
-        /// special characters like in C: \r \f \n \t \a
+        /// special characters like in C: "\r" "\f" "\n" "\t" "\a"
         SF_C_SPECIAL    = 1 << 4,
-        /// characters can be written in hexadecimal notation: \x20 is ' '
+        /// characters can be written in hexadecimal notation: "\x20" is " "
         SF_C_HEX_CHARS  = 1 << 5,
         /// A delimiter inside a string must be doubled (like in Pascal)
         SF_DOUBLE_DELIM = 1 << 6,
index 14e07e74581e182f0001b1578aaeeb83c3813aa3..54db19f45f09fea482dcf800f1374f9ca2148c62 100644 (file)
@@ -6,6 +6,9 @@
  * The original sources can be found on https://github.com/republib.
 */
 
+/** @file
+ * @brief A parser for the language <b>ML</b>.
+ */
 
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
@@ -155,10 +158,10 @@ RplASItem* RplMFParser::parseRepeat()
  * @brief Parses a for statement.
  *
  * Syntax:
- * for [ <var> ] [ from <start_expr> ] to <end_expr> [ step <step_expr> ] do
- * <body> od
+ * for [ VAR ] [ from START_EXPR ] to END_EXPR [ step STEP_EXPR ] do
+ * BODY od
  *
- * for <var> in <iterable_expr> do <body> od
+ * for VAR in ITERABLE_EXPR do BODY od
  *
  * @post            the token behind the do is read
  * @return          the abstract syntax tree of the for statement
@@ -208,8 +211,8 @@ RplASItem* RplMFParser::parseFor()
  * @brief Parses a variable definition.
  *
  * Syntax:
- * Variable: { "const" | "lazy" }* <type> id [ = <expr> ] [ ";" ]
- * Parameter: { "const" | "lazy" }* <type> id [ = <expr> ] { "," | ")" }
+ * Variable: { "const" | "lazy" }* TYPE id [ = EXPR ] [ ";" ]
+ * Parameter: { "const" | "lazy" }* TYPE id [ = EXPR ] { "," | ")" }
  *
  * @pre             first token of the definition is read
  * @post            token behind the definition is read: ';', ',', ')'
@@ -352,7 +355,7 @@ RplASVariant* RplMFParser::tokenToVariant(RplToken* token,
  * @brief Parses a list.
  *
  * Syntax:<br>
- * '[' [<expr_1> [ ',' <expr_2> ...]] ']'
+ * '[' [ EXPR_1 [ ',' EXPR_2 ...]] ']'
  *
  * @pre    '[' is the current token
  * @post   the token behind the ']' is read
@@ -398,7 +401,7 @@ RplASItem* RplMFParser::parseList()
  * @brief Parses a map.
  *
  * Syntax:<br>
- * '{' [ <string_expr1> ':' <expr_1> [ ',' <string_expr1> ': <expr_2> ...]] '}'
+ * '{' [ STRING_EXPR_1 ':' EXPR_1 [ ',' STRING_EXPR_2 ': EXPR_2 ...]] '}'
  *
  * @pre    '{' is the current token
  * @post   the token behind the '}' is read
index 4ed24f8b82562d160fa06b8e78547040836a9cf9..3ead4a5961914ea981060b9d34928462a2360009 100644 (file)
@@ -6,6 +6,10 @@
  * The original sources can be found on https://github.com/republib.
 */
 
+/** @file
+ * @brief Generally usable parts of an parser, e.g. error handling.
+ */
+
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
 
@@ -88,8 +92,7 @@ RplParser::RplParser(RplLexer& lexer, RplASTree& tree) :
  * @param prefix    first char in the message: 'E' (error) or 'W' (warning)
  * @param location  unique id of the error/warning message
  * @param position  position of the error/warning
- * @param format    message with placeholdes like sprintf()
- * @param varList   the variable argument list
+ * @param message   message with placeholdes like sprintf()
  */
 void RplParser::addSimpleMessage(LevelTag prefix, int location,
                                  const RplSourcePosition* position,
@@ -131,7 +134,7 @@ void RplParser::addMessage(LevelTag prefix, int location,
  * The exception will be catched at a position where error recovery can take place.
  *
  * @param location  unique id of the error/warning message
- * @param format    message with placeholdes like sprintf()
+ * @param message   error message
  */
 
 void RplParser::syntaxError(int location, const char* message)
index f694219ee41f1e9bb15a1130d84406ab68e6a24d..14a289462e23af636dc8c9c2ac7c098c6890871d 100644 (file)
@@ -5,6 +5,17 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
 */
+
+/** @file
+ * @brief Reading from several input media.
+ *
+ * The abstract base class <code>RplReader</code> and its concrete derivations
+ * <code>RplStringReader</code>, <code>RplFileReader</code> are used to read
+ * from one medium.
+ * The <code>RplSource</code> combines several readers and build a uniquely
+ * usable input stream.
+ */
+
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
 
@@ -103,7 +114,6 @@ RplSourcePosition::RplSourcePosition() :
  * @param unit      name of the input source (normally a file)
  * @param lineNo    line number inside the input source
  * @param colNo     distance to the line start
- * @param source    parent: the source
  */
 RplSourcePosition::RplSourcePosition(RplSourceUnit* unit, int lineNo,
         int colNo) :
@@ -726,16 +736,17 @@ void RplStringReader::replaceSource(const QString& name, const QString& content)
 /**
  * @brief Constructor.
  *
- * @param name      name of the unit, the filename
+ * @param file      name of the directory
  * @param reader    the parent
  */
-RplFileSourceUnit::RplFileSourceUnit(const QDir& dir,
+RplFileSourceUnit::RplFileSourceUnit(const QDir& file,
                                      RplFileReader* reader) :
-    RplSourceUnit(dir.absolutePath(), reader),
+    RplSourceUnit(file.absolutePath(), reader),
     m_currentPosition(0),
-    m_file(dir.absolutePath()),
+    m_file(file.absolutePath()),
     m_textStream(&m_file),
-    m_line() {
+    m_line()
+{
 }
 
 /**
index 176a44d31947d317eb44d4ed7ed78a32c741adf7..249274be2aba923db3e7176a169d1bb94f1e9c81 100644 (file)
@@ -6,6 +6,10 @@
  * The original sources can be found on https://github.com/republib.
 */
 
+/** @file
+ *
+ * @brief Implements an interpreter of an abstract syntax tree.
+ */
 
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
index 34efc1958ca905e4ca94bae7b1bc337f2e78bddb..ca217799a19cb1e5b3f2d545ed48a266e443e39a 100644 (file)
@@ -1,10 +1,15 @@
 /*
+ *
  * Licence:
  * You can use and modify this file without any restriction.
  * There is no warranty.
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
  */
+/** @file
+ * @brief Implements encryption and decryption engines.
+ */
+
 #include "rplmath.hpp"
 
 /** @class RplEnigma::secret_t rplenigma.hpp "rplmath/rplenigma.hpp"
index e6cf18f4b1b12ec57b6958b9263892360a7f717a..d27e95db32b5aa35679f0707cdbd1b19ec9ee5d0 100644 (file)
@@ -5,6 +5,10 @@
  *      Author: hm
  */
 
+/** @file
+ * @brief Implements 2 dimensional matrices.
+ */
+
 #include "rplmath/rplmath.hpp"
 
 RplMatrixException::RplMatrixException(const RplMatrix& RplMatrix,
@@ -38,6 +42,7 @@ RplMatrix::RplMatrix(const char* name) :
  *
  * @param rows         number of rows
  * @param cols         number of columns
+ * @param name      the name of the matrix
  */
 RplMatrix::RplMatrix(int rows, int cols, const char* name):
                        m_rows(rows),
@@ -73,7 +78,7 @@ RplMatrix::RplMatrix(const RplMatrix& source) :
  *
  * @param rows         the row number
  * @param cols         the column number
- * @trows RplMatrixException
+ * @throws RplMatrixException
  */
 void RplMatrix::checkDefinition(int rows, int cols) const
 {
@@ -253,7 +258,7 @@ bool RplMatrix::operator ==(const RplMatrix& operand) const
 /**
  * Compares the instance with a given scalar.
  *
- * @param operand      the scalar to compare
+ * @param scalar       the scalar to compare
  * @return                     true: all elements are equal to the scalar<br>
  *                                     false: otherwise
  */
index 6bf00d52adacbd51bc63c68e35bc0a491e4dcd99..581a0c992f75692a9dc3641ecf76abb16e13ec01 100644 (file)
@@ -5,6 +5,10 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
  */
+
+/** @file
+ * @brief Implements pseudo random generators.
+ */
 #include "rplmath.hpp"
 
 /** @class RplRandom rplrandom.hpp "rplmath/rplrandom.hpp"
index 981ab5a09dcb902ca290931ffc1dd172dccea2b4..b78c121bd7c77669a0cabaefde286f804182525e 100644 (file)
@@ -101,8 +101,6 @@ void RplTcpClient::handleError(QAbstractSocket::SocketError socketError) {
  * @brief Constructor.
  *
  * @param configurator  delivers some connection parameters
- * @param port          0 or the port of the server
- * @param sleepMilliSec duration of a busy wait
  * @param logger        the logger. If NULL a default logger will be used
  */
 RplClientThread::RplClientThread(RplConfigurator& configurator,
index e4533d9dd529ed2c8709e0f59a685448c66e9661..d6ab51972383b1698756403f4c0236cb663c3658 100644 (file)
@@ -105,7 +105,7 @@ qintptr RplTcpThread::getSocketDescriptor() const {
  *
  * @param configurator  some parameters will be get from this configurator
  * @param taskHandler       this handler reads from the tcp and interprets the content
- * @param threadFacctory    creates a thread for a new connection
+ * @param threadFactory     creates a thread for a new connection
  * @param logger            NULL or logger
  * @param parent            NULL or the parent which deletes the childen
  */
index 22585f366acc6a9606e02319c7d4fa2784dc1f14..7786ab4f37ccae1a6ac389fd59b24a039693927a 100644 (file)
@@ -5,6 +5,12 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
 */
+
+/** @file
+ * @brief Unit test of the abstract syntax tree.
+ */
+
+
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
 #include "rplcore/rpltest.hpp"
index 6c8ae4c45778e59a97ecd525708a1726821c79f7..1245694c4a8166b965c5fbabfdc4379ad6d19700 100644 (file)
@@ -5,6 +5,10 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
 */
+/** @file
+ * @brief Unit test of the byte and C string storage.
+ */
+
 #include "rplcore/rplcore.hpp"
 #include "rplcore/rpltest.hpp"
 
index 78780b608b355271934ec4a3f779eff2c173e249..3d9696ea7242966d8db618a1ff38d6ad5652e63c 100644 (file)
@@ -6,6 +6,10 @@
  * The original sources can be found on https://github.com/republib.
 */
 
+/** @file
+ * @brief Unit test of the syntax symbol extractor.
+ */
+
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
 #include "rplcore/rpltest.hpp"
index 896dfc00b1ac2063c94c5892768f9c73492aefb5..b9a651d5106be6c670f2bd44a076fe4e1a92cb3f 100644 (file)
@@ -4,6 +4,11 @@
  *  Created on: 29.05.2014
  *      Author: hm
  */
+
+/** @file
+ * @brief Unit test of the matrices.
+ */
+
 #include "rplcore/rplcore.hpp"
 #include "rplmath/rplmath.hpp"
 #include "rplcore/rpltest.hpp"
index 13edfaa43a5edda900a02d99ee49d8a2a6c84f37..74d0300143ef087fc8ad0fcee1293d76d566dd55 100644 (file)
@@ -5,6 +5,9 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
 */
+/** @file
+ * @brief Unit test of the parser for the language "MF".
+ */
 
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
index a048ab7d8a636cb42d0d0d88507b10f9f835e34d..bdadd09cae3d1b9a642314f8f2eaa087c87158b0 100644 (file)
@@ -5,6 +5,10 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
 */
+/** @file
+ * @brief Unit test of the QString tools.
+ */
+
 #include "rplcore/rplcore.hpp"
 #include "rplcore/rpltest.hpp"
 
index 9d0a6cd54389c551255f6905ebd766b9fc96866c..40cc89218ce2fc15660d12328669367087518450 100644 (file)
@@ -6,6 +6,10 @@
  * The original sources can be found on https://github.com/republib.
 */
 
+/** @file
+ * @brief Unit test of the input media reader.
+ */
+
 #include "rplcore/rplcore.hpp"
 #include "rplexpr/rplexpr.hpp"
 #include "rplcore/rpltest.hpp"
index b32f701ba29864a634bbf7fd29c779956a06b955..975e529a038b99ec53c201654a927c0e2a38b5b7 100644 (file)
@@ -5,7 +5,10 @@
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
 */
-// ------------------
+
+/** @file
+ * @brief Unit test of the QByteArray tools.
+ */
 #include "rplcore/rplcore.hpp"
 #include "rplcore/rpltest.hpp"
 /**
index 581630101155f17a22d983e12bd6027b530a244e..b34898251b858900b4d8d91c90da6ec1d53bd9ce 100644 (file)
@@ -1,10 +1,16 @@
 /*
+ *
  * Licence:
  * You can use and modify this file without any restriction.
  * There is no warranty.
  * You also can use the licence from http://www.wtfpl.net/.
  * The original sources can be found on https://github.com/republib.
 */
+
+/** @file
+ * @brief Unit test of the output media writers.
+ */
+
 #include "rplcore/rplcore.hpp"
 #include "rplcore/rpltest.hpp"
 /**