diff options
Diffstat (limited to 'vim/bundle/vim-snippets/snippets/perl6.snippets')
-rw-r--r-- | vim/bundle/vim-snippets/snippets/perl6.snippets | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/vim/bundle/vim-snippets/snippets/perl6.snippets b/vim/bundle/vim-snippets/snippets/perl6.snippets new file mode 100644 index 0000000..21ddf5b --- /dev/null +++ b/vim/bundle/vim-snippets/snippets/perl6.snippets @@ -0,0 +1,116 @@ +# shebang +snippet #! + #!/usr/bin/env perl6 + +# Hash Pointer +snippet . + => +# Function +snippet sub + sub ${1:function_name}(${2:Str $var}) { + ${3} + } +snippet mul + multi ${1:function_name}(${2:Str $var}) { + ${3} + } +# Conditional +snippet if + if ${1} { + ${2} + } +# Conditional if..else +snippet ife + if ${1} { + ${2} + } + else { + ${3} + } +snippet eif + elsif ${1) { + ${2} + } +# Conditional One-line +snippet xif + ${1:expression} if ${2:condition}; +# Unless conditional +snippet unless + unless ${1} { + ${2} + } +# Unless conditional One-line +snippet xunless + ${1:expression} unless ${2:condition}; +# Ternary conditional +snippet tc + ${1:condition} ?? ${2:value-if-true} !! ${3:value-if-false}; +# given - when (perl6 switch) +snippet switch + given ${1:$var} { + when ${2:condition} { + ${3:# code block ...} + } + ${4} + default { + ${5} + } + } +# 'loop' - C's for. +snippet loop + loop (my ${1:$i} = 0; $$1 < ${2:count}; $$1++) { + ${3} + } +# for loop +snippet for + for ${1:@array} -> ${2:$variable} { + ${3} + } +# While Loop +snippet wh + while ${1} { + ${2} + } +# Repeat while and repean until +snippet rp + repeat { + ${1} + } ${2:while|until} ${3}; +# classes .. +snippet cl + ${1:my} class ${2:ClassName} ${3:is|does Parent|Role}{ + ${4} + } +snippet has + has ${1:Type} ${2:$!identifier}; +snippet mth + method ${1:method_name}(${2:$attr}) { + ${3} + } +snippet pmth + method ${1:!}${2:method_name}(${3:$attr}) { + ${4} + } +snippet smth + submethod ${1:submethod_name}(${2:$attr}) { + ${3} + } +# Tests +snippet test + use v6; + use Test; + ${1:use lib 'lib';} + + plan ${2:$num-tests}; + +# IO +snippet slurp + my ${1:$var} = "${2:filename}".IO.slurp; +snippet rfile + for "${1:filename}".IO.lines -> $line { + ${2} + } +snippet open + my $fh = open "${1:filename}", ${2::r|:w|:a}; + ${3:# actions}; + $fh.close; |