{"format":1,"manifest":{"name":"go-snippets","publisher":"vyloxi","version":"1.1.0","displayName":"Go Snippets","description":"Functions, structs, interfaces, goroutines, error handling, tests and HTTP handlers.","engines":{"ferrum":"^0.1.0"},"categories":["Snippets"],"icon":"icon.png","repository":"https://github.com/voukengdongmofrankysteve/ferrum-market","license":"MIT","contributes":{"snippets":[{"language":"Go","path":"snippets/go.json"}]}},"files":{"icon.png":{"encoding":"base64","content":"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"},"snippets/go.json":{"encoding":"utf8","content":"{\n  \"Main package\": {\n    \"prefix\": \"main\",\n    \"body\": [\n      \"package main\",\n      \"\",\n      \"import \\\"fmt\\\"\",\n      \"\",\n      \"func main() {\",\n      \"\\t$0\",\n      \"}\"\n    ],\n    \"description\": \"A main package\"\n  },\n  \"Function\": {\n    \"prefix\": \"fn\",\n    \"body\": [\n      \"func ${1:name}(${2:args}) ${3:error} {\",\n      \"\\t$0\",\n      \"}\"\n    ],\n    \"description\": \"A function\"\n  },\n  \"Method\": {\n    \"prefix\": \"meth\",\n    \"body\": [\n      \"func (${1:r} *${2:Type}) ${3:Name}(${4:args}) ${5:error} {\",\n      \"\\t$0\",\n      \"}\"\n    ],\n    \"description\": \"A method\"\n  },\n  \"Struct\": {\n    \"prefix\": \"st\",\n    \"body\": [\n      \"type ${1:Name} struct {\",\n      \"\\t${2:Field} ${3:string}\",\n      \"}\"\n    ],\n    \"description\": \"A struct\"\n  },\n  \"Interface\": {\n    \"prefix\": \"iface\",\n    \"body\": [\n      \"type ${1:Name} interface {\",\n      \"\\t${2:Method}(${3}) ${4:error}\",\n      \"}\"\n    ],\n    \"description\": \"An interface\"\n  },\n  \"Error check\": {\n    \"prefix\": \"err\",\n    \"body\": [\n      \"if err != nil {\",\n      \"\\treturn ${1:err}\",\n      \"}\"\n    ],\n    \"description\": \"if err != nil\"\n  },\n  \"Error wrap\": {\n    \"prefix\": \"errw\",\n    \"body\": [\n      \"return fmt.Errorf(\\\"${1:context}: %w\\\", err)\"\n    ],\n    \"description\": \"Wrap an error\"\n  },\n  \"For range\": {\n    \"prefix\": \"fr\",\n    \"body\": [\n      \"for ${1:i}, ${2:v} := range ${3:items} {\",\n      \"\\t$0\",\n      \"}\"\n    ],\n    \"description\": \"for range\"\n  },\n  \"Goroutine\": {\n    \"prefix\": \"go\",\n    \"body\": [\n      \"go func() {\",\n      \"\\t$0\",\n      \"}()\"\n    ],\n    \"description\": \"A goroutine\"\n  },\n  \"Channel\": {\n    \"prefix\": \"ch\",\n    \"body\": [\n      \"${1:ch} := make(chan ${2:int}, ${3:0})\"\n    ],\n    \"description\": \"Make a channel\"\n  },\n  \"Select\": {\n    \"prefix\": \"sel\",\n    \"body\": [\n      \"select {\",\n      \"case ${1:v} := <-${2:ch}:\",\n      \"\\t$0\",\n      \"case <-ctx.Done():\",\n      \"\\treturn ctx.Err()\",\n      \"}\"\n    ],\n    \"description\": \"A select\"\n  },\n  \"Test\": {\n    \"prefix\": \"test\",\n    \"body\": [\n      \"func Test${1:Name}(t *testing.T) {\",\n      \"\\t$0\",\n      \"}\"\n    ],\n    \"description\": \"A test\"\n  },\n  \"Table test\": {\n    \"prefix\": \"tt\",\n    \"body\": [\n      \"func Test${1:Name}(t *testing.T) {\",\n      \"\\ttests := []struct {\",\n      \"\\t\\tname string\",\n      \"\\t\\t${2:in}   ${3:string}\",\n      \"\\t\\twant ${4:string}\",\n      \"\\t}{\",\n      \"\\t\\t{\\\"${5:case}\\\", \\\"\\\", \\\"\\\"},\",\n      \"\\t}\",\n      \"\\tfor _, tt := range tests {\",\n      \"\\t\\tt.Run(tt.name, func(t *testing.T) {\",\n      \"\\t\\t\\t$0\",\n      \"\\t\\t})\",\n      \"\\t}\",\n      \"}\"\n    ],\n    \"description\": \"A table driven test\"\n  },\n  \"HTTP handler\": {\n    \"prefix\": \"hh\",\n    \"body\": [\n      \"func ${1:handler}(w http.ResponseWriter, r *http.Request) {\",\n      \"\\t$0\",\n      \"}\"\n    ],\n    \"description\": \"An HTTP handler\"\n  },\n  \"Defer\": {\n    \"prefix\": \"df\",\n    \"body\": [\n      \"defer ${1:f.Close()}\"\n    ],\n    \"description\": \"defer\"\n  }\n}\n"},"README.md":{"encoding":"utf8","content":"# Go Snippets\n\nFunctions, structs, interfaces, goroutines, error handling, tests and HTTP handlers.\n\nType a prefix and press Tab. 15 snippets.\n\n| Language | Prefix | What it inserts |\n| --- | --- | --- |\n| Go | `main` | A main package |\n| Go | `fn` | A function |\n| Go | `meth` | A method |\n| Go | `st` | A struct |\n| Go | `iface` | An interface |\n| Go | `err` | if err != nil |\n| Go | `errw` | Wrap an error |\n| Go | `fr` | for range |\n| Go | `go` | A goroutine |\n| Go | `ch` | Make a channel |\n| Go | `sel` | A select |\n| Go | `test` | A test |\n| Go | `tt` | A table driven test |\n| Go | `hh` | An HTTP handler |\n| Go | `df` | defer |\n\nThis extension runs no code and asks for no permissions.\n"}}}