78 lines
1.9 KiB
JSON
78 lines
1.9 KiB
JSON
|
{
|
||
|
"Derive newtype instance": {
|
||
|
"prefix": "gnderive",
|
||
|
"description": "Use newtype deriving on any typeclass",
|
||
|
"body": "derive newtype instance $0 $3 $2"
|
||
|
},
|
||
|
"Generate json instances": {
|
||
|
"prefix": "json",
|
||
|
"description": "Generate the deriving of the EncodeJson and DecodeJson typeclasses",
|
||
|
"body": [
|
||
|
"derive newtype instance EncodeJson $1",
|
||
|
"derive newtype instance DecodeJson $1"
|
||
|
]
|
||
|
},
|
||
|
"Generic": {
|
||
|
"prefix": "dgeneric",
|
||
|
"description": "Generate the generic instance for a type",
|
||
|
"body": "derive instance Generic $1 _"
|
||
|
},
|
||
|
"Generic Show": {
|
||
|
"prefix": "gshow",
|
||
|
"description": "Generate generic show instances",
|
||
|
"body": [
|
||
|
"instance Show $1 where",
|
||
|
" show = genericShow"
|
||
|
]
|
||
|
},
|
||
|
"Generic Debug": {
|
||
|
"prefix": "gdebug",
|
||
|
"description": "Generate generic debug instances",
|
||
|
"body": [
|
||
|
"instance Debug $1 where",
|
||
|
" debug = genericDebug"
|
||
|
]
|
||
|
},
|
||
|
"Generic json": {
|
||
|
"prefix": "gjson",
|
||
|
"description": "Generate generic json instances",
|
||
|
"body": [
|
||
|
"instance EncodeJson $1 where",
|
||
|
" encodeJson = genericEncodeJson",
|
||
|
"instance DecodeJson $1 where",
|
||
|
" decodeJson = genericDecodeJson"
|
||
|
]
|
||
|
},
|
||
|
"Instance": {
|
||
|
"prefix": "instance",
|
||
|
"description": "Declare typeclass instance",
|
||
|
"body": [
|
||
|
"instance $2 $3 where",
|
||
|
" $0"
|
||
|
]
|
||
|
},
|
||
|
"Functor": {
|
||
|
"prefix": "dfunctor",
|
||
|
"description": "Derive a Functor instance",
|
||
|
"body": "derive instance Functor $1$0"
|
||
|
},
|
||
|
"Eq": {
|
||
|
"prefix": "deq",
|
||
|
"description": "Derive an Eq instance",
|
||
|
"body": "derive instance Eq $1$0"
|
||
|
},
|
||
|
"Ord": {
|
||
|
"prefix": "dord",
|
||
|
"description": "Derive an Ord instance",
|
||
|
"body": "derive instance Ord $1$0"
|
||
|
},
|
||
|
"Eq & Ord": {
|
||
|
"prefix": "deqord",
|
||
|
"description": "Derive an Eq and an Ord instance",
|
||
|
"body": [
|
||
|
"derive instance Eq $1",
|
||
|
"derive instance Ord $1$0"
|
||
|
]
|
||
|
}
|
||
|
}
|