Commit Graph

109 Commits

Author SHA1 Message Date
Andreas Lauser
c41f5ac2ed ParserLog: print messages to a stream
If no ParserLog object is provided, stdout is used by default. The
stream can also be used to write to a logfile or it can be omitted
entirely. thanks to [at] joakim-hove for insisting on it...
2014-10-10 12:40:35 +02:00
Andreas Lauser
ff90fe71c0 replace the deck-internal logging system by ParserLog 2014-10-07 15:39:14 +02:00
Andreas Lauser
f754bd9c45 fix some screw-up with internal vs deck names
Parser::hasKeyword() was called with deckNames but looked up the map
for internal names. This patch renames the method to hasDeckName(),
renames Parser::getKeyword() to Parser::getKeywordFromDeckName() and
adapts/extends the tests.
2014-07-01 17:07:43 +02:00
Andreas Lauser
fe638c2fc8 separate the internal keyword names and the deck names more clearly
so far, these two concepts were partially mingled in Opm::Parser...
2014-06-29 14:32:06 +02:00
Andreas Lauser
5f949c11c3 add support for parser keywords specifying to multiple deck keywords
Say hello to the complete set of well, region, field and group output
specifiers soon...
2014-06-13 13:17:03 +02:00
Andreas Lauser
0d92cd43b0 export possibility to parse an arbitrary std::istream
this has the potential to reduce the memory requirements of the parser
for opm-benchmarks considerably and is quite easy to add since
internally all parsing happend on istreams anyway...

The parser integration test has been extended to test the new method
as well as `parseString()` which was omitted previously. (I wonder who
introduced this without changing the test. ;)
2014-05-20 12:12:12 +02:00
Atle Haugan
9ac0401af5 Support for PATHS keyword - first take 2014-02-21 12:56:20 +01:00
Atle Haugan
cd3d4f9337 First cut: TITLE keyword now being parsed correctly. 2014-01-28 10:01:11 +01:00
Atle Haugan
51ac683ef2 OPM-17: Fixed bug in END[INC] logic. 2014-01-24 13:16:37 +01:00
Andreas Lauser
9a09fa29af rename Parser::parse to Parser::parseFile and add Parser::parseData
Parser::parseData is quite useful for unit tests to prevent them
spilling files to everything. Also, what was formerly
Parser::parseFile has been renamed to Parser::parseStream and slightly
modified to not be specific for std::ifstream.
2014-01-10 14:51:56 +01:00
Atle Haugan
6709523843 Removed even more green code 2014-01-08 11:20:31 +01:00
Atle Haugan
e3f752f38b Removed some green code 2014-01-08 11:12:52 +01:00
Atle Haugan
25eb08aa52 After code review with Kristian and Joakim 2014-01-08 10:49:21 +01:00
Atle Haugan
67ab48eee0 First running version of the KeyWordDescriber class. Some cleanup and refactoring required. 2014-01-08 10:49:20 +01:00
Atle Haugan
72545992e1 First running version of the KeyWordDescriber class. Some cleanup and refactoring required. 2014-01-08 10:49:20 +01:00
Joakim Hove
de16ff8da1 Added methods applyUnitsToDeck() which push units onto the deck. 2013-12-14 10:28:49 +01:00
Andreas Lauser
7be1af4bf3 Parser.hpp: make the guardian macro less prone to conflicts
as soon as this class is used with another project, the old macro name
basically screamed for a naming conflict and a _very_ confused user...
2013-12-09 07:55:58 +01:00
Kristian Flikka
a750fd422d Added constructor, moved ParserState struct to cpp file 2013-12-06 15:27:05 +01:00
Kristian Flikka
78337c7bda Added a ParserState struct, to encapsulate the temporary state of the parsing process 2013-12-06 14:18:05 +01:00
Joakim Hove
f1e9230911 Merge remote-tracking branch 'upstream/master' into norne-keywords 2013-12-02 13:21:00 +01:00
Kristian Flikka
1d0135da5e Removed use of boost::shared_ptr, replaced with std::shared_ptr 2013-12-02 13:07:01 +01:00
Joakim Hove
abd0905171 Changed parser to support parsing of keywords with wildcard like
"TVDP*". An importtant change is that we now query the parser
canParseKeyword() instead of hasKeyword().
2013-12-01 09:28:14 +01:00
Joakim Hove
2ac8bc55a5 Merge pull request #30 from joakim-hove/data-with-space
Data with space
2013-10-15 05:23:11 -07:00
Joakim Hove
b63244228d Added Parser::dropKeyword() 2013-10-09 08:22:43 +02:00
Joakim Hove
f0770f47fb Added filename and line nr to RawRecord 2013-10-08 15:23:45 +02:00
Kristian Flikka
297c719a1c Cleanup of some remaining Logger stuff 2013-09-19 10:57:46 +02:00
Joakim Hove
1ff18bb38a Removed constructor with one global JSON config file + addedd optional flag to include all built in keywords 2013-09-14 22:39:43 +02:00
Joakim Hove
414feb1132 Added dynamic creation of inline default list of keywords 2013-09-14 21:44:20 +02:00
Joakim Hove
41376779f0 Fixed handling of INCLUDE keyword 2013-09-02 10:08:37 +02:00
Kristian Flikka
480d14934b Added test for a case with fully, partial and empty record body, defaults are added 2013-08-26 15:17:52 +02:00
Joakim Hove
b630140316 Merged upstream/master 2013-08-23 09:30:23 +02:00
Kristian Flikka
8b4d052f9c Added parameter to parse function to indicate if strict (exception throwing) parsing should be performed 2013-08-21 14:54:38 +02:00
Joakim Hove
dfca913462 Added method to load keyword configurations from directory 2013-08-21 12:50:21 +02:00
Kristian Flikka
89daeea561 Renamed newRawKeyword to createRawKeyword. Minor refactoring 2013-08-21 08:44:46 +02:00
Joakim Hove
47d29cc804 Added parser->size() and parser->loadKeywordFromFile() 2013-08-19 22:37:48 +02:00
Joakim Hove
134e4be5cf Removed references to RawDeck 2013-08-14 08:40:07 +02:00
Joakim Hove
5ab04d4b17 Removed old Parser::parse() and replaced with new implementation 2013-08-12 14:39:11 +02:00
Joakim Hove
5c3de27077 1. Implemented support for inferring size from another kewyord - i.e EQLDIMS + EQUIL.
2. Cleaned up the main parser loop considerably; the RawKeyword instance now itself knows whether it is complete or not.
2013-08-11 12:36:16 +02:00
Joakim Hove
b3d9fb51a0 Parser object can be constructed with config file as input argument 2013-07-31 11:30:21 +02:00
Joakim Hove
e0995814f6 More JSON integration in Parser and ParserKeyword 2013-07-30 14:10:07 +02:00
Kristian Flikka
50ec3e0244 Changed from using RawParserKeywords to equivalent functionality now in Parser and ParserKeywordSize 2013-06-21 15:34:06 +02:00
Kristian Flikka
d79745ce4f Changed some KEYWORD->Keyword instances, search and replace hickup 2013-06-20 15:40:45 +02:00
Kristian Flikka
f1660460dc Replaced all instances of KW with Keyword. We can afford it. 2013-06-20 15:30:37 +02:00
Kristian Flikka
2cce97f115 Split parser function, to make more modular and testable. Moved integrationtests from ParserTests into Integration tests. 2013-06-18 10:28:30 +02:00
Kristian Flikka
fbb468342d Finished up the last pieces for a simple BPR keyword vertical. 2013-06-04 14:32:30 +02:00
Kristian Flikka
b43d95c5a2 Starting to wrap up from the top, added the missing DeckKW, and refactored a bit in some of the Raw classes that returned the internal structure 2013-06-03 15:54:16 +02:00
Joakim Hove
c596b086c8 Started integration testing 2013-05-30 10:11:12 +02:00
Kristian Flikka
bf3be4695d Refactoring, prefixing parser setup classes with Parser. 4 space indent. 2013-05-06 12:13:49 +02:00
Joakim Hove
40e6a35332 ??? 2013-05-06 09:48:29 +02:00
Joakim Hove
60abc2c397 Merged in documentation 2013-05-06 09:44:00 +02:00