def METHOD_NAME(self):
    if self.settings.compiler.get_safe("cppstd"):
        check_min_cppstd(self, self._min_cppstd)
    if Version(self.version) <= "0.1.5" and self.options.shared and is_msvc(self):
        # see https://github.com/David-Haim/concurrencpp/issues/75
        raise ConanInvalidConfiguration(f"{self.ref} does not support shared builds with Visual Studio")
    if Version(self.version) <= "0.1.6" and self.settings.compiler == "gcc":
        raise ConanInvalidConfiguration("gcc is not supported by concurrencpp")
    if Version(self.version) >= "0.1.5" and self.settings.compiler == "apple-clang":
        # apple-clang does not seem to support the C++20 synchronization library which concurrencpp 0.1.5 depends on
        raise ConanInvalidConfiguration("apple-clang is not supported by concurrencpp 0.1.5 and higher")
    minimum_version = self._minimum_compilers_version.get(str(self.settings.compiler), False)
    if minimum_version and Version(self.settings.compiler.version) < minimum_version:
        raise ConanInvalidConfiguration(
            f"{self.ref} requires C++{self._min_cppstd}, which your compiler does not support."
        )
    if self.settings.compiler == "clang" and self.settings.compiler.libcxx != "libc++":
        raise ConanInvalidConfiguration("libc++ required")