summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpowARman <andreas.regel@gmx.de>2020-08-03 18:02:45 (GMT)
committerGitHub <noreply@github.com>2020-08-03 18:02:45 (GMT)
commit5e293b201f46bd98695bcc92ce2ecaa1f2b15c54 (patch)
tree80e41cf29284faf03b0ce9aa9de16f9a3e7a6ad3
parent97b6582daef5028fd3077a7fc29bd94b393f7ae1 (diff)
downloadDoxygen-5e293b201f46bd98695bcc92ce2ecaa1f2b15c54.zip
Doxygen-5e293b201f46bd98695bcc92ce2ecaa1f2b15c54.tar.gz
Doxygen-5e293b201f46bd98695bcc92ce2ecaa1f2b15c54.tar.bz2
Vhdl improvements (ALIAS, translation) (#7813)
* Support VHDL alias constructs. * Translate class to "Design Unit" for VHDL. * Fix compile error * Add new function trDesignUnitDocumentation() to translator. Adapt english and german translation to use the new function. Co-authored-by: Andreas Regel <andreas.regel@newayselectronics.com>
-rw-r--r--src/translator.h6
-rw-r--r--src/translator_adapter.h12
-rw-r--r--src/translator_br.h2
-rw-r--r--src/translator_de.h10
-rw-r--r--src/translator_en.h12
-rw-r--r--src/translator_nl.h2
-rw-r--r--src/translator_pt.h2
-rw-r--r--src/translator_sv.h2
-rw-r--r--vhdlparser/VhdlParserTokenManager.cc5
-rwxr-xr-xvhdlparser/vhdlparser.jj2
10 files changed, 48 insertions, 7 deletions
diff --git a/src/translator.h b/src/translator.h
index e3bfb51..a588763 100644
--- a/src/translator.h
+++ b/src/translator.h
@@ -650,6 +650,12 @@ class Translator
virtual QCString trOperationDocumentation() = 0;
virtual QCString trDataMembers() = 0;
virtual QCString trDataMemberDocumentation() = 0;
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.8.19
+//////////////////////////////////////////////////////////////////////////
+
+ virtual QCString trDesignUnitDocumentation() = 0;
};
#endif
diff --git a/src/translator_adapter.h b/src/translator_adapter.h
index fdc68f9..af18ab4 100644
--- a/src/translator_adapter.h
+++ b/src/translator_adapter.h
@@ -41,7 +41,17 @@ class TranslatorAdapterBase : public Translator
};
-class TranslatorAdapter_1_8_15 : public TranslatorAdapterBase
+class TranslatorAdapter_1_8_19 : public TranslatorAdapterBase
+{
+ public:
+ virtual QCString updateNeededMessage()
+ { return createUpdateNeededMessage(idLanguage(),"release 1.8.19"); }
+
+ virtual QCString trDesignUnitDocumentation()
+ { return english.trDesignUnitDocumentation(); }
+};
+
+class TranslatorAdapter_1_8_15 : public TranslatorAdapter_1_8_19
{
public:
virtual QCString updateNeededMessage()
diff --git a/src/translator_br.h b/src/translator_br.h
index 7c98480..7c2122f 100644
--- a/src/translator_br.h
+++ b/src/translator_br.h
@@ -49,7 +49,7 @@
#ifndef TRANSLATOR_BR_H
#define TRANSLATOR_BR_H
-class TranslatorBrazilian : public Translator
+class TranslatorBrazilian : public TranslatorAdapter_1_8_19
{
public:
diff --git a/src/translator_de.h b/src/translator_de.h
index 9672fbe..09d58b3 100644
--- a/src/translator_de.h
+++ b/src/translator_de.h
@@ -480,7 +480,7 @@ class TranslatorGerman : public TranslatorAdapter_1_8_15
}
else if (Config_getBool(OPTIMIZE_OUTPUT_VHDL))
{
- return "Entwurfseinheiten-Dokumentation";
+ return trDesignUnitDocumentation();
}
else
{
@@ -2246,6 +2246,14 @@ class TranslatorGerman : public TranslatorAdapter_1_8_15
virtual QCString trCustomReference(const char *name)
{ return QCString(name)+"-Referenz"; }
+//////////////////////////////////////////////////////////////////////////
+// new since 1.8.19
+//////////////////////////////////////////////////////////////////////////
+
+ /** VHDL design unit documentation */
+ virtual QCString trDesignUnitDocumentation()
+ { return "Entwurfseinheiten-Dokumentation"; }
+
//////////////////////////////////////////////////////////////////////////
};
diff --git a/src/translator_en.h b/src/translator_en.h
index a5be968..8666c10 100644
--- a/src/translator_en.h
+++ b/src/translator_en.h
@@ -394,6 +394,10 @@ class TranslatorEnglish : public Translator
{
return "Data Structure Documentation";
}
+ else if (Config_getBool(OPTIMIZE_OUTPUT_VHDL))
+ {
+ return trDesignUnitDocumentation();
+ }
else
{
return "Class Documentation";
@@ -2246,6 +2250,14 @@ class TranslatorEnglish : public Translator
}
//////////////////////////////////////////////////////////////////////////
+// new since 1.8.19
+//////////////////////////////////////////////////////////////////////////
+
+ /** VHDL design unit documentation */
+ virtual QCString trDesignUnitDocumentation()
+ { return "Design Unit Documentation"; }
+
+//////////////////////////////////////////////////////////////////////////
};
diff --git a/src/translator_nl.h b/src/translator_nl.h
index f2887c6..c9fe946 100644
--- a/src/translator_nl.h
+++ b/src/translator_nl.h
@@ -18,7 +18,7 @@
#ifndef TRANSLATOR_NL_H
#define TRANSLATOR_NL_H
-class TranslatorDutch : public Translator
+class TranslatorDutch : public TranslatorAdapter_1_8_19
{
public:
QCString idLanguage()
diff --git a/src/translator_pt.h b/src/translator_pt.h
index dfe4027..0ad107b 100644
--- a/src/translator_pt.h
+++ b/src/translator_pt.h
@@ -59,7 +59,7 @@
#define TRANSLATOR_PT_H
-class TranslatorPortuguese : public Translator
+class TranslatorPortuguese : public TranslatorAdapter_1_8_19
{
public:
diff --git a/src/translator_sv.h b/src/translator_sv.h
index a4ff4f6..aea1bf5 100644
--- a/src/translator_sv.h
+++ b/src/translator_sv.h
@@ -143,7 +143,7 @@ I left use clause untouched as I didn't find a suitable translation for it.
#ifndef TRANSLATOR_SE_H
#define TRANSLATOR_SE_H
-class TranslatorSwedish : public Translator
+class TranslatorSwedish : public TranslatorAdapter_1_8_19
{
public:
diff --git a/vhdlparser/VhdlParserTokenManager.cc b/vhdlparser/VhdlParserTokenManager.cc
index d51b004..341469f 100644
--- a/vhdlparser/VhdlParserTokenManager.cc
+++ b/vhdlparser/VhdlParserTokenManager.cc
@@ -3538,6 +3538,11 @@ void VhdlParserTokenManager::SkipLexicalActions(Token *matchedToken){
void VhdlParserTokenManager::TokenLexicalActions(Token *matchedToken){
switch(jjmatchedKind)
{
+ case 14 : {
+ image.append(input_stream->GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
+ parser->outlineParser()->setLineParsed(ALIAS_T);
+ break;
+ }
case 17 : {
image.append(input_stream->GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
parser->outlineParser()->setLineParsed(ARCHITECTURE_T);
diff --git a/vhdlparser/vhdlparser.jj b/vhdlparser/vhdlparser.jj
index 007bd5b..177b5f4 100755
--- a/vhdlparser/vhdlparser.jj
+++ b/vhdlparser/vhdlparser.jj
@@ -143,7 +143,7 @@ TOKEN [IGNORE_CASE] :
<ABS_T: "abs">
| <ACCESS_T: "access">
| <AFTER_T: "after">
-| <ALIAS_T: "alias">
+| <ALIAS_T: "alias"> {parser->outlineParser()->setLineParsed(ALIAS_T);}
| <ALL_T: "all">
| <AND_T: "and">
| <ARCHITECTURE_T: "architecture"> {parser->outlineParser()->setLineParsed(ARCHITECTURE_T);}