/* SPDX-License-Identifier: MIT */ /* Copyright © 2021 Max Bachmann */ #pragma once #include #include #include namespace rapidfuzz::detail { class Postfix : public SimilarityBase::max()> { friend SimilarityBase::max()>; friend NormalizedMetricBase; template static size_t maximum(const Range& s1, const Range& s2) { return std::max(s1.size(), s2.size()); } template static size_t _similarity(Range s1, Range s2, size_t score_cutoff, [[maybe_unused]] size_t score_hint) { size_t dist = remove_common_suffix(s1, s2); return (dist >= score_cutoff) ? dist : 0; } }; } // namespace rapidfuzz::detail