From 4a3998c698c0182539bbf80dc34aad18e0804795 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Mon, 29 Mar 2021 13:25:18 +0200 Subject: [PATCH] ENH: add exprResult output of a field without dictionary keywords --- .../expressions/exprResult/exprResult.C | 48 +++++++++++++------ .../expressions/exprResult/exprResult.H | 8 +++- .../expressions/exprResult/exprResultI.H | 44 +++++++++++++---- 3 files changed, 73 insertions(+), 27 deletions(-) diff --git a/src/OpenFOAM/expressions/exprResult/exprResult.C b/src/OpenFOAM/expressions/exprResult/exprResult.C index b1f93df855..2b43da245f 100644 --- a/src/OpenFOAM/expressions/exprResult/exprResult.C +++ b/src/OpenFOAM/expressions/exprResult/exprResult.C @@ -624,21 +624,7 @@ void Foam::expressions::exprResult::writeDict os.writeEntryIfDifferent("isPointValue", false, isPointData_); os.writeEntry("isSingleValue", isUniform_); - const bool ok = - ( - writeValueFieldChecked(os) - || writeValueFieldChecked(os) - || writeValueFieldChecked(os) - || writeValueFieldChecked(os) - || writeValueFieldChecked(os) - || writeValueFieldChecked(os) - ); - - if (!ok) - { - WarningInFunction - << "Unknown data type " << valType_ << endl; - } + this->writeField(os, "value"); } if (subDict) @@ -650,6 +636,38 @@ void Foam::expressions::exprResult::writeDict } +void Foam::expressions::exprResult::writeField +( + Ostream& os, + const word& keyword +) const +{ + // const auto oldFmt = os.format(IOstream::ASCII); + + DebugInFunction + << Foam::name(this) << nl + << "Format: " + << IOstreamOption::formatNames[os.format()] << nl; + + const bool ok = + ( + writeFieldChecked(keyword, os) + || writeFieldChecked(keyword, os) + || writeFieldChecked(keyword, os) + || writeFieldChecked(keyword, os) + || writeFieldChecked(keyword, os) + || writeFieldChecked