ENH: improve infrastructure for detecting excess tokens (issue #762)
- Always used for optional dictionary entries, since these are individual values, and not meant to be embedded in a larger stream of tokens. Methods: - lookupOrDefault, lookupOrAddDefault, lookupOrDefaultCompat - readIfPresent, readIfPresentCompat - Handling mandatory dictionary entries is slightly more complex, since these may be part of larger stream of tokens, and are often used in a constructor context. For example, word modelType(dict.lookup("type")); Or they are used without a definite context. For example, dict.lookup("format") >> outputFormat; Newly introduced methods for mandatory dictionary entries: - get, getCompat - read, readCompat In a constructor or assignment context: word modelType(dict.get<word>("type")); outputFormat = dict.lookup("format"); without copy/move (similar to readIfPresent): dict.read("format", outputFormat);
Showing
- src/OpenFOAM/containers/Dictionaries/DictionaryBase/DictionaryBase.C 2 additions, 2 deletions...M/containers/Dictionaries/DictionaryBase/DictionaryBase.C
- src/OpenFOAM/db/dictionary/dictionary.C 58 additions, 33 deletionssrc/OpenFOAM/db/dictionary/dictionary.C
- src/OpenFOAM/db/dictionary/dictionary.H 77 additions, 22 deletionssrc/OpenFOAM/db/dictionary/dictionary.H
- src/OpenFOAM/db/dictionary/dictionaryCompat.C 9 additions, 10 deletionssrc/OpenFOAM/db/dictionary/dictionaryCompat.C
- src/OpenFOAM/db/dictionary/dictionarySearch.C 26 additions, 44 deletionssrc/OpenFOAM/db/dictionary/dictionarySearch.C
- src/OpenFOAM/db/dictionary/dictionaryTemplates.C 84 additions, 86 deletionssrc/OpenFOAM/db/dictionary/dictionaryTemplates.C
- src/OpenFOAM/db/error/IOerror.C 5 additions, 5 deletionssrc/OpenFOAM/db/error/IOerror.C
- src/OpenFOAM/primitives/functions/Function1/ramp/ramp.C 1 addition, 1 deletionsrc/OpenFOAM/primitives/functions/Function1/ramp/ramp.C
Please register or sign in to comment