#pragma once #include #include #include namespace jvalidate::constraint { class ExtensionConstraint { public: struct Impl { virtual ~Impl() = default; virtual Status visit(extension::VisitorBase const &) const = 0; }; public: std::unique_ptr pimpl; }; }