diff --git a/src/language/modules/SchemeModule.cpp b/src/language/modules/SchemeModule.cpp index 2dbeb18248cac0b8d30c536bc3755f832ebd773d..fec3c23524095b6633d6bc1d873b28a8e01ac8b7 100644 --- a/src/language/modules/SchemeModule.cpp +++ b/src/language/modules/SchemeModule.cpp @@ -191,6 +191,18 @@ SchemeModule::SchemeModule() )); + this + ->_addBuiltinFunction("fixed", + std::make_shared<BuiltinFunctionEmbedder<std::shared_ptr<const IBoundaryConditionDescriptor>( + std::shared_ptr<const IBoundaryDescriptor>)>>( + + [](std::shared_ptr<const IBoundaryDescriptor> boundary) + -> std::shared_ptr<const IBoundaryConditionDescriptor> { + return std::make_shared<FixedBoundaryConditionDescriptor>(boundary); + } + + )); + this ->_addBuiltinFunction("symmetry", std::make_shared<BuiltinFunctionEmbedder<std::shared_ptr<const IBoundaryConditionDescriptor>( diff --git a/src/scheme/FixedBoundaryConditionDescriptor.hpp b/src/scheme/FixedBoundaryConditionDescriptor.hpp index 2a635b04148a30fda0add405e992ca5ca3f21875..9167c24beb7a91d1810cff528d23a4f72e39a25a 100644 --- a/src/scheme/FixedBoundaryConditionDescriptor.hpp +++ b/src/scheme/FixedBoundaryConditionDescriptor.hpp @@ -13,7 +13,7 @@ class FixedBoundaryConditionDescriptor : public IBoundaryConditionDescriptor std::ostream& _write(std::ostream& os) const final { - os << "fixed(" << m_name << ',' << *m_boundary_descriptor << ")"; + os << "fixed(" << *m_boundary_descriptor << ")"; return os; } @@ -22,12 +22,6 @@ class FixedBoundaryConditionDescriptor : public IBoundaryConditionDescriptor std::shared_ptr<const IBoundaryDescriptor> m_boundary_descriptor; public: - std::string_view - name() const - { - return m_name; - } - const IBoundaryDescriptor& boundaryDescriptor() const { @@ -40,12 +34,9 @@ class FixedBoundaryConditionDescriptor : public IBoundaryConditionDescriptor return Type::fixed; } - FixedBoundaryConditionDescriptor(const std::string_view name, - std::shared_ptr<const IBoundaryDescriptor> boundary_descriptor) - : m_name{name}, m_boundary_descriptor(boundary_descriptor) - { - ; - } + FixedBoundaryConditionDescriptor(std::shared_ptr<const IBoundaryDescriptor> boundary_descriptor) + : m_boundary_descriptor(boundary_descriptor) + {} FixedBoundaryConditionDescriptor(const FixedBoundaryConditionDescriptor&) = delete; FixedBoundaryConditionDescriptor(FixedBoundaryConditionDescriptor&&) = delete;