Explorar o código

add rapidfuzz (#3518)

Seedking hai 1 ano
pai
achega
bab3fc19c9
Modificáronse 1 ficheiros con 30 adicións e 0 borrados
  1. 30 0
      packages/r/rapidfuzz/xmake.lua

+ 30 - 0
packages/r/rapidfuzz/xmake.lua

@@ -0,0 +1,30 @@
+package("rapidfuzz")
+    set_kind("library", {headeronly = true})
+    set_homepage("https://rapidfuzz.github.io/rapidfuzz-cpp")
+    set_description("Rapid fuzzy string matching in C++ using the Levenshtein Distance")
+    set_license("MIT")
+
+    add_urls("https://github.com/rapidfuzz/rapidfuzz-cpp/archive/refs/tags/$(version).tar.gz",
+             "https://github.com/rapidfuzz/rapidfuzz-cpp.git")
+
+    add_versions("v3.0.2", "4fddce5c0368e78bd604c6b820e6be248d669754715e39b4a8a281bda4c06de1")
+
+    add_deps("cmake")
+
+    on_install(function (package)
+        import("package.tools.cmake").install(package)
+    end)
+
+    on_test(function (package)
+        assert(package:check_cxxsnippets({test = [[
+            void test() {
+                using rapidfuzz::fuzz::ratio;
+                double score1 = rapidfuzz::fuzz::ratio("this is a test", "this is a test!");
+                double score2 = rapidfuzz::fuzz::partial_ratio("this is a test", "this is a test!");
+                double score3 = rapidfuzz::fuzz::ratio("fuzzy wuzzy was a bear", "wuzzy fuzzy was a bear");
+                double score4 = rapidfuzz::fuzz::token_sort_ratio("fuzzy wuzzy was a bear", "wuzzy fuzzy was a bear");
+                double score5 = rapidfuzz::fuzz::token_sort_ratio("fuzzy was a bear", "fuzzy fuzzy was a bear");
+                double score6 = rapidfuzz::fuzz::token_set_ratio("fuzzy was a bear", "fuzzy fuzzy was a bear");
+            }
+        ]]},{includes = "rapidfuzz/fuzz.hpp", configs = {languages = "c++17"}}))
+    end)