Code cleanup in KeywordDescriber.cpp
This commit is contained in:
@@ -26,71 +26,60 @@
|
||||
#include <opm/parser/eclipse/Parser/ParserKeyword.hpp>
|
||||
|
||||
|
||||
void printKeyword(Opm::ParserKeywordConstPtr keyword, std::string indent)
|
||||
void printKeyword(Opm::ParserKeywordConstPtr keyword)
|
||||
{
|
||||
std::string indent = " ";
|
||||
std::cout << keyword->getName() << std::endl;
|
||||
std::cout << indent << "Number of items: " << keyword->numItems() << std::endl;
|
||||
std::cout << indent << "Has dimension information: " << keyword->hasDimension() << std::endl;
|
||||
std::cout << indent << "Size type: " << ParserKeywordSizeEnum2String(keyword->getSizeType()) << std::endl;
|
||||
switch (keyword->getSizeType()) {
|
||||
case Opm::ParserKeywordSizeEnum::SLASH_TERMINATED: {
|
||||
std::cout << indent << "Size type: SLASH_TERMINATED" << std::endl;
|
||||
break;
|
||||
}
|
||||
case Opm::ParserKeywordSizeEnum::FIXED: {
|
||||
std::cout << indent << "Size type: FIXED" << std::endl;
|
||||
if (keyword->hasFixedSize())
|
||||
std::cout << indent << "Fixed size: " << keyword->getFixedSize() << std::endl;
|
||||
break;
|
||||
}
|
||||
case Opm::ParserKeywordSizeEnum::OTHER_KEYWORD_IN_DECK: {
|
||||
std::cout << indent << "Size type: OTHER" << std::endl;
|
||||
std::pair<std::string, std::string> sizeDefinitionPair = keyword->getSizeDefinitionPair();
|
||||
std::cout << indent << "Size defined by: " << sizeDefinitionPair.first << ", " << sizeDefinitionPair.second << std::endl;
|
||||
break;
|
||||
}
|
||||
default:{
|
||||
std::cout << indent << "Size type: UNKNOWN" << std::endl;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void printItems(Opm::ParserKeywordConstPtr keyword, std::string indent)
|
||||
void printItem(Opm::ParserItemConstPtr item, std::string indent)
|
||||
{
|
||||
std::cout << indent << item->name() << std::endl;
|
||||
std::cout << indent << "SizeType: " << ParserItemSizeEnum2String(item->sizeType()) << std::endl;
|
||||
std::cout << indent << "Has dimension information: " << item->hasDimension() << std::endl;
|
||||
if (item->numDimensions() == 1)
|
||||
std::cout << indent << "Dimension: " << item->getDimension(item->numDimensions()-1) << std::endl;
|
||||
std::cout << std::endl;
|
||||
}
|
||||
|
||||
void printItems(Opm::ParserKeywordConstPtr keyword)
|
||||
{
|
||||
std::string indent = " ";
|
||||
std::cout << std::endl;
|
||||
std::cout << indent << "List of items:" << std::endl;
|
||||
Opm::ParserRecordPtr parserRecord = keyword->getRecord();
|
||||
std::vector<Opm::ParserItemConstPtr>::const_iterator iterator;
|
||||
for (iterator = parserRecord->begin(); iterator != parserRecord->end(); ++iterator) {
|
||||
std::cout << indent << (*iterator)->name() << std::endl;
|
||||
switch ((*iterator)->sizeType()) {
|
||||
case Opm::ParserItemSizeEnum::ALL: {
|
||||
std::cout << indent << "SizeType: ALL" << std::endl;
|
||||
break;
|
||||
}
|
||||
case Opm::ParserItemSizeEnum::SINGLE: {
|
||||
std::cout << indent << "SizeType: SINGLE" << std::endl;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
std::cout << indent << "Has dimension information: " << (*iterator)->hasDimension() << std::endl;
|
||||
if ((*iterator)->numDimensions() == 1)
|
||||
std::cout << indent << "Dimension: " << (*iterator)->getDimension((*iterator)->numDimensions()-1) << std::endl;
|
||||
std::cout << std::endl;
|
||||
Opm::ParserItemConstPtr item = *iterator;
|
||||
printItem(item, indent);
|
||||
}
|
||||
}
|
||||
|
||||
void printKeywords (Opm::ParserPtr parser, std::vector<std::string> keywords)
|
||||
{
|
||||
std::string keywordIndent = " ";
|
||||
std::string itemIndent = " ";
|
||||
|
||||
std::vector<std::string>::const_iterator iterator;
|
||||
for (iterator = keywords.begin(); iterator != keywords.end(); ++iterator) {
|
||||
Opm::ParserKeywordConstPtr keyword = parser->getKeyword(*iterator);
|
||||
printKeyword(keyword, keywordIndent);
|
||||
printItems(keyword, itemIndent);
|
||||
printKeyword(keyword);
|
||||
printItems(keyword);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -124,11 +113,8 @@ int main(int argc, char** argv) {
|
||||
}
|
||||
|
||||
bool allKeywords = parseCommandLineForAllKeywordsOption(argv);
|
||||
|
||||
Opm::ParserPtr parser(new Opm::Parser());
|
||||
|
||||
std::vector<std::string> keywords = createListOfKeywordsToDescribe(argv, allKeywords, parser);
|
||||
|
||||
printKeywords(parser, keywords);
|
||||
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user