summaryrefslogtreecommitdiff
path: root/cpp/src/slice2html
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2017-02-01 23:16:30 +0100
committerJose <jose@zeroc.com>2017-02-01 23:16:30 +0100
commitca131951f8d81ea3da13277172a24234b5c848ea (patch)
tree28b8d9ad6a09f550ef43f3b24df8048da8e70d7d /cpp/src/slice2html
parentAdded entries for support of try-with-resources/with statement in Java/Python (diff)
downloadice-ca131951f8d81ea3da13277172a24234b5c848ea.tar.bz2
ice-ca131951f8d81ea3da13277172a24234b5c848ea.tar.xz
ice-ca131951f8d81ea3da13277172a24234b5c848ea.zip
Add --no-warn option to Slice compilers
Diffstat (limited to 'cpp/src/slice2html')
-rw-r--r--cpp/src/slice2html/Gen.cpp30
-rw-r--r--cpp/src/slice2html/Gen.h10
-rw-r--r--cpp/src/slice2html/Main.cpp6
3 files changed, 27 insertions, 19 deletions
diff --git a/cpp/src/slice2html/Gen.cpp b/cpp/src/slice2html/Gen.cpp
index 1c4de107d54..bd226fbd027 100644
--- a/cpp/src/slice2html/Gen.cpp
+++ b/cpp/src/slice2html/Gen.cpp
@@ -37,7 +37,7 @@ namespace Slice
void
generate(const UnitPtr& unit, const string& dir, const string& header, const string& footer,
const string& indexHeader, const string& indexFooter, const string& imageDir, const string& logoURL,
- const string& searchAction, unsigned indexCount, unsigned warnSummary)
+ const string& searchAction, unsigned indexCount, unsigned warnSummary, int warningLevel)
{
unit->mergeModules();
@@ -66,19 +66,19 @@ generate(const UnitPtr& unit, const string& dir, const string& header, const str
// to the symbol; if the latter, we cannot.
//
Files files;
- FileVisitor tv(files);
+ FileVisitor tv(files, warningLevel);
unit->visit(&tv, false);
//
// Generate the start page.
//
- StartPageVisitor spv(files);
+ StartPageVisitor spv(files, warningLevel);
unit->visit(&spv, false);
//
// Generate the table of contents.
//
- TOCVisitor tocv(files, indexHeader, indexFooter);
+ TOCVisitor tocv(files, indexHeader, indexFooter, warningLevel);
unit->visit(&tocv, false);
tocv.generate();
@@ -86,7 +86,7 @@ generate(const UnitPtr& unit, const string& dir, const string& header, const str
// Generate the individual HTML pages.
//
GeneratorBase::setSymbols(tocv.symbols());
- PageVisitor v(files);
+ PageVisitor v(files, warningLevel);
unit->visit(&v, false);
}
@@ -1800,8 +1800,9 @@ Slice::StartPageGenerator::printHeaderFooter()
end(); // table
}
-Slice::FileVisitor::FileVisitor(Files& files)
- : _files(files)
+Slice::FileVisitor::FileVisitor(Files& files, int warningLevel) :
+ ParserVisitor(warningLevel),
+ _files(files)
{
}
@@ -1863,8 +1864,9 @@ Slice::FileVisitor::visitEnum(const EnumPtr& e)
_files.insert(e->file());
}
-Slice::StartPageVisitor::StartPageVisitor(const Files& files)
- : _spg(files)
+Slice::StartPageVisitor::StartPageVisitor(const Files& files, int warningLevel) :
+ ParserVisitor(warningLevel),
+ _spg(files)
{
}
@@ -2041,8 +2043,9 @@ TOCGenerator::writeEntry(const ContainedPtr& c)
end();
}
-TOCVisitor::TOCVisitor(const Files& files, const string& header, const string& footer)
- : _tg(files, header, footer)
+TOCVisitor::TOCVisitor(const Files& files, const string& header, const string& footer, int warningLevel) :
+ ParserVisitor(warningLevel),
+ _tg(files, header, footer)
{
}
@@ -2976,8 +2979,9 @@ Slice::EnumGenerator::generate(const EnumPtr& e)
assert(_out.currIndent() == indent);
}
-Slice::PageVisitor::PageVisitor(const Files& files)
- : _files(files)
+Slice::PageVisitor::PageVisitor(const Files& files, int warningLevel) :
+ ParserVisitor(warningLevel),
+ _files(files)
{
}
diff --git a/cpp/src/slice2html/Gen.h b/cpp/src/slice2html/Gen.h
index 8fb67136bc0..b38556e4bb2 100644
--- a/cpp/src/slice2html/Gen.h
+++ b/cpp/src/slice2html/Gen.h
@@ -18,7 +18,7 @@ namespace Slice
void generate(const UnitPtr&, const ::std::string&, const ::std::string&, const ::std::string&, const std::string&,
const ::std::string&, const ::std::string&, const ::std::string&, const ::std::string&,
- unsigned, unsigned);
+ unsigned, unsigned, int);
typedef ::std::set< ::std::string> Files;
@@ -141,7 +141,7 @@ class FileVisitor : private ::IceUtil::noncopyable, public ParserVisitor
{
public:
- FileVisitor(Files&);
+ FileVisitor(Files&, int);
virtual bool visitUnitStart(const UnitPtr&);
virtual bool visitModuleStart(const ModulePtr&);
@@ -162,7 +162,7 @@ class StartPageVisitor : private ::IceUtil::noncopyable, public ParserVisitor
{
public:
- StartPageVisitor(const Files&);
+ StartPageVisitor(const Files&, int);
virtual bool visitUnitStart(const UnitPtr&);
virtual bool visitModuleStart(const ModulePtr&);
@@ -195,7 +195,7 @@ class TOCVisitor : private ::IceUtil::noncopyable, public ParserVisitor
{
public:
- TOCVisitor(const Files&, const ::std::string&, const ::std::string&);
+ TOCVisitor(const Files&, const ::std::string&, const ::std::string&, int);
virtual bool visitUnitStart(const UnitPtr&);
virtual bool visitModuleStart(const ModulePtr&);
@@ -255,7 +255,7 @@ class PageVisitor : private ::IceUtil::noncopyable, public ParserVisitor
{
public:
- PageVisitor(const Files&);
+ PageVisitor(const Files&, int);
virtual bool visitUnitStart(const UnitPtr&);
virtual bool visitModuleStart(const ModulePtr&);
diff --git a/cpp/src/slice2html/Main.cpp b/cpp/src/slice2html/Main.cpp
index ae2bfaa75ff..7b5a6562968 100644
--- a/cpp/src/slice2html/Main.cpp
+++ b/cpp/src/slice2html/Main.cpp
@@ -85,6 +85,7 @@ usage(const string& n)
" deprecated: use instead [[\"ice-prefix\"]] metadata.\n"
"--underscore Allow underscores in Slice identifiers\n"
" deprecated: use instead [[\"underscore\"]] metadata.\n"
+ "--no-warn Disable all warnings.\n"
;
}
@@ -112,6 +113,7 @@ compile(const vector<string>& argv)
opts.addOpt("d", "debug");
opts.addOpt("", "ice");
opts.addOpt("", "underscore");
+ opts.addOpt("", "no-warn");
bool validate = find(argv.begin(), argv.end(), "--validate") != argv.end();
vector<string> args;
@@ -220,6 +222,8 @@ compile(const vector<string>& argv)
bool underscore = opts.isSet("underscore");
+ int warningLevel = opts.isSet("no-warn") ? 0 : 1;
+
if(args.empty())
{
consoleErr << argv[0] << ": error: no input file" << endl;
@@ -290,7 +294,7 @@ compile(const vector<string>& argv)
try
{
Slice::generate(p, output, header, footer, indexHeader, indexFooter, imageDir, logoURL,
- searchAction, indexCount, summaryCount);
+ searchAction, indexCount, summaryCount, warningLevel);
}
catch(const Slice::FileException& ex)
{