You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							174 lines
						
					
					
						
							2.6 KiB
						
					
					
				
			
		
		
	
	
							174 lines
						
					
					
						
							2.6 KiB
						
					
					
				priority -50 | 
						|
 | 
						|
snippet rs "raise" b | 
						|
raise (${1:Not_found}) | 
						|
endsnippet | 
						|
 | 
						|
snippet open "open" | 
						|
let open ${1:module} in | 
						|
${2:e} | 
						|
endsnippet | 
						|
 | 
						|
snippet try "try" | 
						|
try ${1:e} | 
						|
with ${2:Not_found} -> ${3:()} | 
						|
endsnippet | 
						|
 | 
						|
snippet ref "ref" | 
						|
let ${1:name} = ref ${2:val} in | 
						|
${3:e} | 
						|
endsnippet | 
						|
 | 
						|
snippet matchl "pattern match on a list" | 
						|
match ${1:list} with | 
						|
| [] -> ${2:()} | 
						|
| x::xs -> ${3:()} | 
						|
endsnippet | 
						|
 | 
						|
snippet matcho "pattern match on an option type" | 
						|
match ${1:x} with | 
						|
| Some(${2:y}) -> ${3:()} | 
						|
| None -> ${4:()} | 
						|
endsnippet | 
						|
 | 
						|
snippet fun "anonymous function" | 
						|
(fun ${1:x} -> ${2:x}) | 
						|
endsnippet | 
						|
 | 
						|
snippet cc "commment" | 
						|
(* ${1:comment} *) | 
						|
endsnippet | 
						|
 | 
						|
snippet let "let .. in binding" | 
						|
let ${1:x} = ${2:v} in | 
						|
${3:e} | 
						|
endsnippet | 
						|
 | 
						|
snippet lr "let rec" | 
						|
let rec ${1:f} = | 
						|
	${2:expr} | 
						|
endsnippet | 
						|
 | 
						|
snippet if "if" | 
						|
if ${1:(* condition *)} then | 
						|
	${2:(* A *)} | 
						|
else | 
						|
	${3:(* B *)} | 
						|
endsnippet | 
						|
 | 
						|
snippet If "If" | 
						|
if ${1:(* condition *)} then | 
						|
	${2:(* A *)} | 
						|
endsnippet | 
						|
 | 
						|
snippet while "while" | 
						|
while ${1:(* condition *)} do | 
						|
	${2:(* A *)} | 
						|
done | 
						|
endsnippet | 
						|
 | 
						|
snippet for "for" | 
						|
for ${1:i} = ${2:1} to ${3:10} do | 
						|
	${4:(* BODY *)} | 
						|
done | 
						|
endsnippet | 
						|
 | 
						|
snippet match "match" | 
						|
match ${1:(* e1 *)} with | 
						|
| ${2:p} -> ${3:e2} | 
						|
endsnippet | 
						|
 | 
						|
snippet Match "match" | 
						|
match ${1:(* e1 *)} with | 
						|
| ${2:p} -> ${3:e2} | 
						|
endsnippet | 
						|
 | 
						|
snippet class "class" | 
						|
class ${1:name} = object | 
						|
	${2:methods} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet obj "obj" | 
						|
object | 
						|
	${2:methods} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet Obj "object" | 
						|
object (self) | 
						|
	${2:methods} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet {{ "object functional update" | 
						|
{< ${1:x} = ${2:y} >} | 
						|
endsnippet | 
						|
 | 
						|
snippet beg "beg" | 
						|
begin | 
						|
	${1:block} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet ml "module instantiantion with functor" | 
						|
module ${1:Mod} = ${2:Functor}(${3:Arg}) | 
						|
endsnippet | 
						|
 | 
						|
snippet mod "module - no signature" | 
						|
module ${1:(* Name *)} = struct | 
						|
	${2:(* BODY *)} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet Mod "module with signature" | 
						|
module ${1:(* Name *)} : ${2:(* SIG *)} = struct | 
						|
	${3:(* BODY *)} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet sig "anonymous signature" | 
						|
sig | 
						|
	${2:(* BODY *)} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet sigf "functor signature or anonymous functor" | 
						|
functor (${1:Arg} : ${2:ARG}) -> ${3:(* BODY *)} | 
						|
endsnippet | 
						|
 | 
						|
snippet func "define functor - no signature" | 
						|
module ${1:M} (${2:Arg} : ${3:ARG}) = struct | 
						|
	${4:(* BODY *)} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet Func "define functor - with signature" | 
						|
module ${1:M} (${2:Arg} : ${3:ARG}) : ${4:SIG} = struct | 
						|
	${5:(* BODY *)} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet mot "Declare module signature" | 
						|
module type ${1:(* Name *)} = sig | 
						|
	${2:(* BODY *)} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet module "Module with anonymous signature" | 
						|
module ${1:(* Name *)} : sig | 
						|
	${2:(* SIGNATURE *)} | 
						|
end = struct | 
						|
	${3:(* BODY *)} | 
						|
end | 
						|
endsnippet | 
						|
 | 
						|
snippet oo "odoc" | 
						|
(** ${1:odoc} *) | 
						|
endsnippet | 
						|
 | 
						|
snippet qt "inline qtest" | 
						|
(*$T ${1:name} | 
						|
	${2:test} | 
						|
*) | 
						|
endsnippet
 | 
						|
 |