summaryrefslogtreecommitdiff
path: root/lua/blink/cmp/fuzzy/rust.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/blink/cmp/fuzzy/rust.lua')
-rw-r--r--lua/blink/cmp/fuzzy/rust.lua20
1 files changed, 20 insertions, 0 deletions
diff --git a/lua/blink/cmp/fuzzy/rust.lua b/lua/blink/cmp/fuzzy/rust.lua
new file mode 100644
index 0000000..e2374cf
--- /dev/null
+++ b/lua/blink/cmp/fuzzy/rust.lua
@@ -0,0 +1,20 @@
+--- @return string
+local function get_lib_extension()
+ if jit.os:lower() == 'mac' or jit.os:lower() == 'osx' then return '.dylib' end
+ if jit.os:lower() == 'windows' then return '.dll' end
+ return '.so'
+end
+
+-- search for the lib in the /target/release directory with and without the lib prefix
+-- since MSVC doesn't include the prefix
+package.cpath = package.cpath
+ .. ';'
+ .. debug.getinfo(1).source:match('@?(.*/)')
+ .. '../../../../target/release/lib?'
+ .. get_lib_extension()
+ .. ';'
+ .. debug.getinfo(1).source:match('@?(.*/)')
+ .. '../../../../target/release/?'
+ .. get_lib_extension()
+
+return require('blink_cmp_fuzzy')