diff options
author | Dimitri van Heesch <doxygen@gmail.com> | 2021-05-15 17:29:42 (GMT) |
---|---|---|
committer | Dimitri van Heesch <doxygen@gmail.com> | 2021-05-15 17:29:42 (GMT) |
commit | e6f54449c5b688cdc6647f80558d67dcaa03b30d (patch) | |
tree | d2ee863521a7e62707eb8e7482eb5d410b6c4e22 /src/template.h | |
parent | 378be4c7f3150e6440993e0bf07235b65fe44870 (diff) | |
download | Doxygen-e6f54449c5b688cdc6647f80558d67dcaa03b30d.zip Doxygen-e6f54449c5b688cdc6647f80558d67dcaa03b30d.tar.gz Doxygen-e6f54449c5b688cdc6647f80558d67dcaa03b30d.tar.bz2 |
Template engine: allow listing list and struct variables as strings
For easier debugging one can do e.g. `{% msg %}value={{ variable }}{% endmsg %}`
to list the value of a variable also when it is a list or struct.
Diffstat (limited to 'src/template.h')
-rw-r--r-- | src/template.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/template.h b/src/template.h index 18e8b06..7d803a3 100644 --- a/src/template.h +++ b/src/template.h @@ -19,6 +19,7 @@ #include <vector> #include "qcstring.h" +#include "containers.h" class TemplateListIntf; class TemplateStructIntf; @@ -231,6 +232,9 @@ class TemplateVariant } } + QCString listToString() const; + QCString structToString() const; + /** Returns the variant as a string. */ QCString toString() const { @@ -240,8 +244,8 @@ class TemplateVariant case Bool: return m_boolVal ? "true" : "false"; case Integer: return QCString().setNum(m_intVal); case String: return m_strVal; - case Struct: return "[struct]"; - case List: return "[list]"; + case Struct: return structToString(); + case List: return listToString(); case Function: return "[function]"; } return QCString(); @@ -417,6 +421,9 @@ class TemplateStructIntf */ virtual TemplateVariant get(const QCString &name) const = 0; + /** Return the list of fields. */ + virtual StringVector fields() const = 0; + /** Increase object's reference count */ virtual int addRef() = 0; @@ -431,6 +438,7 @@ class TemplateStruct : public TemplateStructIntf public: // TemplateStructIntf methods virtual TemplateVariant get(const QCString &name) const; + virtual StringVector fields() const; virtual int addRef(); virtual int release(); |