- findStrings, findMatchingStrings now mostly covered by matching
intrinsics in wordRe and wordRes.
Add static wordRes match() and matching() variants
COMP: remove stringListOps include from objectRegistry.H
- was already noted for removal (NOV-2018)
- wrap command-line retrieval of fileName with an implicit validate.
Instead of this:
fileName input(args[1]);
fileName other(args["someopt"]);
Now use this:
auto input = args.get<fileName>(1);
auto other = args.get<fileName>("someopt");
which adds a fileName::validate on the inputs
Because of how it is implemented, it will automatically also apply
to argList getOrDefault<fileName>, readIfPresent<fileName> etc.
- adjust fileName::validate and clean to handle backslash conversion.
This makes it easier to ensure that path names arising from MS-Windows
are consistently handled internally.
- dictionarySearch: now check for initial '/' directly instead of
relying on fileName isAbsolute(), which now does more things
BREAKING: remove fileName::clean() const method
- relying on const/non-const to control the behaviour (inplace change
or return a copy) is too fragile and the const version was
almost never used.
Replace:
fileName sanitized = constPath.clean();
With:
fileName sanitized(constPath);
sanitized.clean());
STYLE: test empty() instead of comparing with fileName::null
- uses MeshedSurface instead of triSurface to prevent automatic
triangulation.
- supports '-patches' and '-excludePatches' controls as per foamToVTK.
For example,
surfaceSplitByPatch -patches '( ".*rider.*" )' motorBike.obj
ENH: use MeshedSurface for surfaceSubset
General:
* -roots, -hostRoots, -fileHandler
Specific:
* -to <coordinateSystem> -from <coordinateSystem>
- Display -help-compat when compatibility or ignored options are available
STYLE: capitalization of options text
- "cpp -traditional-cpp" doesn't strip C++-style comments
Probably need a workaround with sed -e 's@^ *//@@' if we
wish to support C++-style comments in Make/{files,options}
- lduMatrixTests.C:121:1:
error: ‘Foam::lduMatrix::solverPerformance::solverPerformance’ names
the constructor, not the type
- edgeFaceCirculatorI.H:355:1:
error: ‘Foam::edgeFaceCirculator::edgeFaceCirculator’ names the
constructor, not the type
- patchPointEdgeCirculatorI.H:236:1:
error: ‘Foam::patchPointEdgeCirculator::patchPointEdgeCirculator’
names the constructor, not the type
- objToVTK.C:116:5:
error: ‘Foam::argList::argList’ names the constructor, not the type
same in surfaceClean.C, surfaceRefineRedGreen.C, surfaceSplitByPatch.C
- fireFoam/createFields.H:74:41:
error: type/value mismatch at argument 1 in template parameter list
for ‘template<class T> class Foam::autoPtr’
- can use 'XX.empty()' instead of 'XX.size() == 0', 'XX.size() < 1' or
'XX.size() <= 0' or for simpler coding.
It also has the same number of characters as '!XX.size()' and /might/ be
more readable
- many size checking had 'XX.size() > 0', 'XX.size() != 0', or 'XX.size() >= 1'
when a simple 'XX.size()' suffices