67 lines
1.4 KiB
Lua
67 lines
1.4 KiB
Lua
local ls = require("luasnip")
|
|
local s = ls.snippet
|
|
local sn = ls.snippet_node
|
|
local t = ls.text_node
|
|
local i = ls.insert_node
|
|
local f = ls.function_node
|
|
local c = ls.choice_node
|
|
local d = ls.dynamic_node
|
|
local l = require("luasnip.extras").lambda
|
|
local r = require("luasnip.extras").rep
|
|
local p = require("luasnip.extras").partial
|
|
local m = require("luasnip.extras").match
|
|
local n = require("luasnip.extras").nonempty
|
|
local dl = require("luasnip.extras").dynamic_lambda
|
|
local types = require("luasnip.util.types")
|
|
|
|
return {
|
|
s('derivedebug', t '#[derive(Debug)]'),
|
|
|
|
s(':turbofish', { t { '::<' }, i(0), t { '>' } }),
|
|
|
|
s('print', {
|
|
-- t {'println!("'}, i(1), t {' {:?}", '}, i(0), t {');'}}),
|
|
t { 'println!("' }, i(1), t { ' {' }, i(0), t { ':?}");' } }),
|
|
|
|
s('for',
|
|
{
|
|
t { 'for ' }, i(1), t { ' in ' }, i(2), t { ' {', '' },
|
|
i(0),
|
|
t { '}', '' },
|
|
}),
|
|
|
|
s('struct',
|
|
{
|
|
t { '#[derive(Debug)]', '' },
|
|
t { 'struct ' }, i(1), t { ' {', '' },
|
|
i(0),
|
|
t { '}', '' },
|
|
}),
|
|
|
|
s('test',
|
|
{
|
|
t { '#[test]', '' },
|
|
t { 'fn ' }, i(1), t { '() {', '' },
|
|
t { ' assert' }, i(0), t { '', '' },
|
|
t { '}' },
|
|
}),
|
|
|
|
s('testcfg',
|
|
{
|
|
t { '#[cfg(test)]', '' },
|
|
t { 'mod ' }, i(1), t { ' {', '' },
|
|
t { ' #[test]', '' },
|
|
t { ' fn ' }, i(2), t { '() {', '' },
|
|
t { ' assert' }, i(0), t { '', '' },
|
|
t { ' }', '' },
|
|
t { '}' },
|
|
}),
|
|
|
|
s('if',
|
|
{
|
|
t { 'if ' }, i(1), t { ' {', '' },
|
|
i(0),
|
|
t { '}' },
|
|
}),
|
|
}
|