Commit 532ccd6a authored by GILLES Sebastien's avatar GILLES Sebastien

#1465 Rewriting a Lua file almost works as expected; only heterogeneous vector...

#1465 Rewriting a Lua file almost works as expected; only heterogeneous vector is not yet worign completely as expected.
parent dc1da5b8
......@@ -529,9 +529,6 @@
BE353B9B22E7527100A06A8F /* Extract.hpp in Headers */ = {isa = PBXBuildFile; fileRef = BE353B9822E7527100A06A8F /* Extract.hpp */; };
BE353B9F22E7539E00A06A8F /* Enum.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE353B9C22E7539E00A06A8F /* Enum.cpp */; };
BE353BA122E7539E00A06A8F /* Enum.hpp in Headers */ = {isa = PBXBuildFile; fileRef = BE353B9E22E7539E00A06A8F /* Enum.hpp */; };
BE353BA622E76CF500A06A8F /* ConvertEntryToString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE353BA322E76CF500A06A8F /* ConvertEntryToString.cpp */; };
BE353BA722E76CF500A06A8F /* ConvertEntryToString.hxx in Headers */ = {isa = PBXBuildFile; fileRef = BE353BA422E76CF500A06A8F /* ConvertEntryToString.hxx */; };
BE353BA822E76CF500A06A8F /* ConvertEntryToString.hpp in Headers */ = {isa = PBXBuildFile; fileRef = BE353BA522E76CF500A06A8F /* ConvertEntryToString.hpp */; };
BE353BB322E83AF800A06A8F /* Print.hxx in Headers */ = {isa = PBXBuildFile; fileRef = BE353BB022E83AF800A06A8F /* Print.hxx */; };
BE353BB422E83AF800A06A8F /* Print.hpp in Headers */ = {isa = PBXBuildFile; fileRef = BE353BB122E83AF800A06A8F /* Print.hpp */; };
BE353BBC22E8766100A06A8F /* Normal.hxx in Headers */ = {isa = PBXBuildFile; fileRef = BE353BB922E8766100A06A8F /* Normal.hxx */; };
......@@ -1469,6 +1466,8 @@
BECEF92522DF4A4400D0DDE7 /* ReadBinaryFile.hpp in Headers */ = {isa = PBXBuildFile; fileRef = BECEF92222DF4A4400D0DDE7 /* ReadBinaryFile.hpp */; };
BECEF92B22DF5D5E00D0DDE7 /* Now.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BECEF92822DF5D5E00D0DDE7 /* Now.cpp */; };
BECEF92D22DF5D5E00D0DDE7 /* Now.hpp in Headers */ = {isa = PBXBuildFile; fileRef = BECEF92A22DF5D5E00D0DDE7 /* Now.hpp */; };
BECF3E2122E8A39F00FF951A /* LuaFormat.hpp in Headers */ = {isa = PBXBuildFile; fileRef = BECF3E1E22E8A39E00FF951A /* LuaFormat.hpp */; };
BECF3E2222E8A39F00FF951A /* LuaFormat.hxx in Headers */ = {isa = PBXBuildFile; fileRef = BECF3E1F22E8A39F00FF951A /* LuaFormat.hxx */; };
BED13353206519C800A3B0AA /* Penalization.hxx in Headers */ = {isa = PBXBuildFile; fileRef = BED13351206519C700A3B0AA /* Penalization.hxx */; };
BED13354206519C800A3B0AA /* Penalization.hpp in Headers */ = {isa = PBXBuildFile; fileRef = BED13352206519C800A3B0AA /* Penalization.hpp */; };
BED793B11D1AD75900492784 /* HyperelasticLaw.hpp in Headers */ = {isa = PBXBuildFile; fileRef = BED793AE1D1AD75900492784 /* HyperelasticLaw.hpp */; };
......@@ -3433,9 +3432,6 @@
BE353B9822E7527100A06A8F /* Extract.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = Extract.hpp; sourceTree = "<group>"; };
BE353B9C22E7539E00A06A8F /* Enum.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = Enum.cpp; sourceTree = "<group>"; };
BE353B9E22E7539E00A06A8F /* Enum.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = Enum.hpp; sourceTree = "<group>"; };
BE353BA322E76CF500A06A8F /* ConvertEntryToString.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = ConvertEntryToString.cpp; sourceTree = "<group>"; };
BE353BA422E76CF500A06A8F /* ConvertEntryToString.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = ConvertEntryToString.hxx; sourceTree = "<group>"; };
BE353BA522E76CF500A06A8F /* ConvertEntryToString.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = ConvertEntryToString.hpp; sourceTree = "<group>"; };
BE353BAA22E77F5C00A06A8F /* main.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = main.cpp; sourceTree = "<group>"; };
BE353BAB22E77F5C00A06A8F /* CMakeLists.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
BE353BAD22E83A4700A06A8F /* Print.hxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = Print.hxx; path = Sources/Utilities/Containers/Print.hxx; sourceTree = SOURCE_ROOT; };
......@@ -4664,6 +4660,8 @@
BECEF93322DF640900D0DDE7 /* CMakeLists.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
BECEF93422DF640A00D0DDE7 /* main.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = main.cpp; sourceTree = "<group>"; };
BECEF93522DF7B0200D0DDE7 /* demo_result_directory_start_time.lua */ = {isa = PBXFileReference; lastKnownFileType = text; path = demo_result_directory_start_time.lua; sourceTree = "<group>"; };
BECF3E1E22E8A39E00FF951A /* LuaFormat.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = LuaFormat.hpp; sourceTree = "<group>"; };
BECF3E1F22E8A39F00FF951A /* LuaFormat.hxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = LuaFormat.hxx; sourceTree = "<group>"; };
BED13351206519C700A3B0AA /* Penalization.hxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = Penalization.hxx; sourceTree = "<group>"; };
BED13352206519C800A3B0AA /* Penalization.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = Penalization.hpp; sourceTree = "<group>"; };
BED748E41906734200BAB761 /* main_test_ondomatic_numbering.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = main_test_ondomatic_numbering.cpp; sourceTree = "<group>"; };
......@@ -6819,16 +6817,6 @@
name = "Recovered References";
sourceTree = "<group>";
};
BE353BA222E76C9900A06A8F /* ConvertEntryToString */ = {
isa = PBXGroup;
children = (
BE353BA322E76CF500A06A8F /* ConvertEntryToString.cpp */,
BE353BA522E76CF500A06A8F /* ConvertEntryToString.hpp */,
BE353BA422E76CF500A06A8F /* ConvertEntryToString.hxx */,
);
path = ConvertEntryToString;
sourceTree = "<group>";
};
BE353BA922E77F0700A06A8F /* PrintContainer */ = {
isa = PBXGroup;
children = (
......@@ -6855,6 +6843,15 @@
path = PrintPolicy;
sourceTree = "<group>";
};
BE353BD522E8A27E00A06A8F /* PrintPolicy */ = {
isa = PBXGroup;
children = (
BECF3E1E22E8A39E00FF951A /* LuaFormat.hpp */,
BECF3E1F22E8A39F00FF951A /* LuaFormat.hxx */,
);
path = PrintPolicy;
sourceTree = "<group>";
};
BE372DCD18C47F0500127212 /* Test */ = {
isa = PBXGroup;
children = (
......@@ -7857,9 +7854,9 @@
BE53FC081E0D797500C5D6F5 /* Internal */ = {
isa = PBXGroup;
children = (
BE353BD522E8A27E00A06A8F /* PrintPolicy */,
BEACCCBB1E127D1900CBA4F2 /* ExtractParameter */,
BE53FC2F1E0D86B900C5D6F5 /* Subtuple */,
BE353BA222E76C9900A06A8F /* ConvertEntryToString */,
BE53FC0D1E0D7C6800C5D6F5 /* TupleIteration */,
);
path = Internal;
......@@ -11371,6 +11368,7 @@
BE145A091E54BC49000A2BF5 /* StandardTraits.h in Headers */,
BEDEB9261C3C073100B1C71B /* Mumps.hpp in Headers */,
BE110E971E11513200D2D2C8 /* BaseMatrix.hpp in Headers */,
BECF3E2222E8A39F00FF951A /* LuaFormat.hxx in Headers */,
BE90E1B91A24929A00CCAFDE /* Print.hpp in Headers */,
BE5B6F8D1C3C16E9004A0284 /* MatrixOperations.hxx in Headers */,
BE90E1801A24929A00CCAFDE /* LuaFunction.hpp in Headers */,
......@@ -11411,7 +11409,6 @@
BE90E1C21A2492AA00CCAFDE /* SeldonFunctions.hxx in Headers */,
BE90E1A81A24929A00CCAFDE /* Parmetis.hpp in Headers */,
BEDE16BA204FFD7900DEFE08 /* Lua.hpp in Headers */,
BE353BA722E76CF500A06A8F /* ConvertEntryToString.hxx in Headers */,
BE90E1681A24926E00CCAFDE /* PointerComparison.hpp in Headers */,
BE90E1841A24929A00CCAFDE /* InputData.hxx in Headers */,
BE90E1C11A2492AA00CCAFDE /* SeldonFunctions.hpp in Headers */,
......@@ -11452,6 +11449,7 @@
BEACCCBE1E127D1900CBA4F2 /* ExtractParameter.hpp in Headers */,
BE90E1B41A24929A00CCAFDE /* AccessVectorContent.hxx in Headers */,
BE110EA41E11514200D2D2C8 /* VectorHelper.hpp in Headers */,
BECF3E2122E8A39F00FF951A /* LuaFormat.hpp in Headers */,
BE90E1AB1A24929A00CCAFDE /* Matrix.hxx in Headers */,
BE110E981E11513200D2D2C8 /* NonZeroPattern.hpp in Headers */,
BE353BCF22E87F6F00A06A8F /* Associative.hpp in Headers */,
......@@ -11523,7 +11521,6 @@
BE3FE9D522C500740093E95A /* HasMember.hpp in Headers */,
BE76F2691D7D609E0061B50E /* GlobalVectorTemporary.hpp in Headers */,
BE76F2561D7D5DE90061B50E /* CSRPattern.hxx in Headers */,
BE353BA822E76CF500A06A8F /* ConvertEntryToString.hpp in Headers */,
BECB2E0D213FFBAC0093CB05 /* SnesMacro.hpp in Headers */,
BE3D12C01D9B1FFB00F900F5 /* KspConvergenceReason.hpp in Headers */,
BE8B5F8120778D1A00DC005E /* StringPair.hxx in Headers */,
......@@ -12868,7 +12865,6 @@
BE6E4EE11B2ABE8B0049BB2D /* AccessGhostContent.cpp in Sources */,
BEDEB9251C3C073100B1C71B /* Mumps.cpp in Sources */,
BE90E1B21A24929A00CCAFDE /* AccessVectorContent.cpp in Sources */,
BE353BA622E76CF500A06A8F /* ConvertEntryToString.cpp in Sources */,
BE41A8D11A24AA7F004E4312 /* Petsc.cpp in Sources */,
BECEF91F22DF2A0800D0DDE7 /* VectorInitMethods.cpp in Sources */,
BE90E1AF1A24929A00CCAFDE /* Vector.cpp in Sources */,
......@@ -31,7 +31,12 @@ namespace MoReFEM::Internal::PetscNS
/// \name Special members.
///@{
//! Constructor.
/*!
* \brief Constructor.
*
* \param[in] argc The first argument from main() function.
* \param[in] argv The second argument from main() function.
*/
explicit RAII(int argc, char** argv);
//! Destructor.
......
......@@ -8,8 +8,8 @@
//Copyright © 2019 Inria. All rights reserved.
//
#ifndef MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEYS_HPP_
# define MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEYS_HPP_
#ifndef MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEY_HPP_
# define MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEY_HPP_
# include <memory>
# include <vector>
......@@ -41,4 +41,4 @@ namespace MoReFEM::Utilities::PrintPolicyNS
# include "Utilities/Containers/PrintPolicy/Key.hxx"
#endif // MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEYS_HPP_
#endif // MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEY_HPP_
......@@ -8,8 +8,8 @@
//Copyright © 2019 Inria. All rights reserved.
//
#ifndef MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEYS_HXX_
# define MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEYS_HXX_
#ifndef MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEY_HXX_
# define MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEY_HXX_
namespace MoReFEM::Utilities::PrintPolicyNS
......@@ -26,4 +26,4 @@ namespace MoReFEM::Utilities::PrintPolicyNS
} // namespace MoReFEM::Utilities::PrintPolicyNS
#endif // MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEYS_HXX_
#endif // MOREFEM_x_UTILITIES_x_CONTAINERS_x_PRINT_POLICY_x_KEY_HXX_
//! \file
//
//
// ConvertEntryToString.cpp
// MoReFEM
//
// Created by sebastien on 23/07/2019.
//Copyright © 2019 Inria. All rights reserved.
//
#include "Utilities/InputData/Internal/ConvertEntryToString/ConvertEntryToString.hpp"
namespace MoReFEM::Internal::InputDataNS
{
} // namespace MoReFEM::Internal::InputDataNS
//! \file
//
//
// ConvertEntryToString.hpp
// MoReFEM
//
// Created by sebastien on 23/07/2019.
//Copyright © 2019 Inria. All rights reserved.
//
#ifndef MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_CONVERT_ENTRY_TO_STRING_x_CONVERT_ENTRY_TO_STRING_HPP_
# define MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_CONVERT_ENTRY_TO_STRING_x_CONVERT_ENTRY_TO_STRING_HPP_
# include <string>
# include <variant>
# include <vector>
# include <map>
# include <sstream>
# include "Utilities/InputData/LuaFunction.hpp"
# include "Utilities/Miscellaneous.hpp"
namespace MoReFEM::Internal::InputDataNS
{
template<class T>
std::string ConvertEntryToString(T entry);
} // namespace MoReFEM::Internal::InputDataNS
# include "Utilities/InputData/Internal/ConvertEntryToString/ConvertEntryToString.hxx"
#endif // MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_CONVERT_ENTRY_TO_STRING_x_CONVERT_ENTRY_TO_STRING_HPP_
//! \file
//
//
// ConvertEntryToString.hxx
// MoReFEM
//
// Created by sebastien on 23/07/2019.
//Copyright © 2019 Inria. All rights reserved.
//
#ifndef MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_CONVERT_ENTRY_TO_STRING_x_CONVERT_ENTRY_TO_STRING_HXX_
# define MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_CONVERT_ENTRY_TO_STRING_x_CONVERT_ENTRY_TO_STRING_HXX_
namespace MoReFEM::Internal::InputDataNS
{
template<class T>
std::string ConvertEntryToString(T entry)
{
if constexpr(Utilities::IsSpecializationOf
<
std::variant,
T
>())
{
std::ostringstream oconv;
oconv << "\n[[\n"
<< std::visit([](auto&& arg)
{
return ConvertEntryToString(arg);
},
entry)
<< "\n]]";
return oconv.str();
}
else if constexpr (std::is_same<T, bool>())
{
return std::to_string(entry);
}
else if constexpr (std::is_same<T, std::string>())
{
std::ostringstream oconv;
oconv << "'" << entry << "'";
return oconv.str();
}
else if constexpr (std::is_integral<T>())
{
return std::to_string(entry);
}
else if constexpr (std::is_floating_point<T>())
{
return std::to_string(entry);
}
else if constexpr(Utilities::IsSpecializationOf<Utilities::InputDataNS::LuaFunction, T>())
{
return entry.GetString();
}
else if constexpr (Utilities::IsSpecializationOf<std::map, T>())
{
return "Map!";
}
else if constexpr (Utilities::IsSpecializationOf<std::vector, T>())
{
return "Vector!";
}
else
{
assert(false && "Case not foreseen...");
exit(EXIT_FAILURE);
}
}
} // namespace MoReFEM::Internal::InputDataNS
#endif // MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_CONVERT_ENTRY_TO_STRING_x_CONVERT_ENTRY_TO_STRING_HXX_
......@@ -10,10 +10,5 @@
target_sources(${MOREFEM_UTILITIES}
PRIVATE
"${CMAKE_CURRENT_LIST_DIR}/ConvertEntryToString.cpp"
PRIVATE
"${CMAKE_CURRENT_LIST_DIR}/ConvertEntryToString.hpp"
"${CMAKE_CURRENT_LIST_DIR}/ConvertEntryToString.hxx"
)
//! \file
//
//
// LuaFormat.hpp
// MoReFEM
//
// Created by sebastien on 24/07/2019.
//Copyright © 2019 Inria. All rights reserved.
//
#ifndef MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_PRINT_POLICY_x_LUA_FORMAT_HPP_
# define MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_PRINT_POLICY_x_LUA_FORMAT_HPP_
# include <type_traits>
# include <vector>
# include <sstream>
# include <variant>
# include "Utilities/Miscellaneous.hpp"
# include "Utilities/Containers/Print.hpp"
# include "Utilities/Containers/PrintPolicy/Associative.hpp"
namespace MoReFEM::Internal::PrintPolicyNS
{
/*!
* \brief Policy to handle the printing of input data onto a stream.
*
* This is implemented very similarly as the policies of PrintContainer... because I am using this very facility
* to print content of a vector!
*
* This function is implemented with recursivity: it is for instance possible to print a vector of heterogeneous
* values (in a std::variant in this case).
*
* The point of this policy is to allow to print in a Lua file all the different types accepted in the Lua interface.
* The policy has been classified as 'Internal' as it is very specific and is unlikely to be of use directly to
* a end-user, contrary to the other policies provided in Utilities/Containers/PrintPolicy directory.
*/
struct LuaFormat
{
public:
//! \copydoc doxygen_hide_print_policy_do
template<class ElementTypeT>
static void Do(std::ostream& stream, ElementTypeT&& element);
};
} // namespace MoReFEM::Internal::PrintPolicyNS
#include "Utilities/InputData/Internal/PrintPolicy/LuaFormat.hxx"
#endif // MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_PRINT_POLICY_x_LUA_FORMAT_HPP_
//! \file
//
//
// LuaFormat.hxx
// MoReFEM
//
// Created by sebastien on 24/07/2019.
//Copyright © 2019 Inria. All rights reserved.
//
#ifndef MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_PRINT_POLICY_x_LUA_FORMAT_HXX_
# define MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_PRINT_POLICY_x_LUA_FORMAT_HXX_
namespace MoReFEM::Internal::PrintPolicyNS
{
template<class ElementTypeT>
void LuaFormat::Do(std::ostream& stream, ElementTypeT&& entry)
{
using type = std::decay_t<ElementTypeT>;
if constexpr (Utilities::IsSpecializationOf
<
std::variant,
type
>())
{
stream << "\n[[\n";
std::visit([&stream](auto&& arg)
{
LuaFormat::Do(stream, arg);
},
entry);
stream << "\n]]";
}
else if constexpr(Utilities::IsSpecializationOf<Utilities::InputDataNS::LuaFunction, type>())
{
stream << entry.GetString();
}
else if constexpr (std::is_same<type, std::string>())
{
stream << "'" << entry << "'";
}
else if constexpr (std::is_arithmetic<type>())
{
stream << entry;
}
else if constexpr (Utilities::IsSpecializationOf<std::map, type>())
{
// Map can only called on the end of the recursion, contrary to vector.
Utilities::PrintContainer<::MoReFEM::Utilities::PrintPolicyNS::Associative>::Do(entry, stream);
}
else if constexpr (Utilities::IsSpecializationOf<std::vector, type>())
{
Utilities::PrintContainer<LuaFormat>::Do(entry, stream);
}
else
{
assert(false && "Case not foreseen...");
exit(EXIT_FAILURE);
}
}
} // namespace MoReFEM::Internal::PrintPolicyNS
#endif // MOREFEM_x_UTILITIES_x_INPUT_DATA_x_INTERNAL_x_PRINT_POLICY_x_LUA_FORMAT_HXX_
### ===================================================================================
### This file is generated automatically by Scripts/generate_cmake_source_list.py.
### Do not edit it manually!
### Convention is that:
### - When a CMake file is manually managed, it is named canonically CMakeLists.txt.
###. - When it is generated automatically, it is named SourceList.cmake.
### ===================================================================================
target_sources(${MOREFEM_UTILITIES}
PRIVATE
"${CMAKE_CURRENT_LIST_DIR}/LuaFormat.hpp"
"${CMAKE_CURRENT_LIST_DIR}/LuaFormat.hxx"
)
......@@ -15,5 +15,6 @@ target_sources(${MOREFEM_UTILITIES}
include(${CMAKE_CURRENT_LIST_DIR}/ExtractParameter/SourceList.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/TupleIteration/SourceList.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/ConvertEntryToString/SourceList.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/PrintPolicy/SourceList.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/Subtuple/SourceList.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/ManualParsing/SourceList.cmake)
......@@ -27,7 +27,7 @@
# include "Utilities/String/String.hpp"
# include "Utilities/InputData/Exceptions/InputData.hpp"
# include "Utilities/InputData/Internal/TupleIteration/Impl/Print.hpp"
# include "Utilities/InputData/Internal/ConvertEntryToString/ConvertEntryToString.hpp"
# include "Utilities/InputData/Internal/PrintPolicy/LuaFormat.hpp"
# include "Core/InputData/Instances/Crtp/Section.hpp"
......
......@@ -359,7 +359,8 @@ namespace MoReFEM
tuple_iteration::template ExtractValue<TupleEltTypeT>(input_data->GetTuple(),
value);
assert(!(!value));
oconv << ConvertEntryToString(value->GetTheValue());
Internal::PrintPolicyNS::LuaFormat::Do(oconv, value->GetTheValue());
}
parameter_block_per_identifier.emplace_back(std::make_pair(TupleEltTypeT::GetIdentifier(), oconv.str()));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment