|
| 1 | +{ |
| 2 | + "class": { |
| 3 | + "prefix": "class", |
| 4 | + "body": "\nclass ${1:${TM_FILENAME_BASE}}\n{\nprivate:\n\t${2:/* data */}\npublic:\n\t${1}(${3:/* args */});\n\t~${1}();\n};\n\n${1}::${1}(${3})\n{\n}\n\n${1}::~${1}()\n{\n}\n", |
| 5 | + "description": "Code snippet for class", |
| 6 | + "scope": "source.c++, source.objc++" |
| 7 | + }, |
| 8 | + "classi": { |
| 9 | + "prefix": "classi", |
| 10 | + "body": "\nclass ${1:${TM_FILENAME_BASE}}\n{\nprivate:\n\t${2:/* data */}\npublic:\n\t${1}::${1}(${3:/* args */}) { $0 }\n\t${1}::~${1}() { }\n};", |
| 11 | + "description": "Code snippet for class with inlined constructor/destructor", |
| 12 | + "scope": "source.c++, source.objc++" |
| 13 | + }, |
| 14 | + "classt": { |
| 15 | + "prefix": "classt", |
| 16 | + "body": "\ntemplate<typename T>\nclass ${1:${TM_FILENAME_BASE}}\n{\nprivate:\n\tT ${2:/* data */}\npublic:\n\t${1}(T ${3:/* args */});\n};\n", |
| 17 | + "description": "Code snippet for class template", |
| 18 | + "scope": "source.c++, source.objc++" |
| 19 | + }, |
| 20 | + "struct": { |
| 21 | + "prefix": "struct", |
| 22 | + "body": "\nstruct ${1:${TM_FILENAME_BASE}}\n{\n\t${0:/* data */}\n};\n", |
| 23 | + "description": "Code snippet for struct", |
| 24 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 25 | + }, |
| 26 | + "union": { |
| 27 | + "prefix": "union", |
| 28 | + "body": "\nunion ${1:${TM_FILENAME_BASE}}\n{\n\t${0:/* data */}\n};\n", |
| 29 | + "description": "Code snippet for union", |
| 30 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 31 | + }, |
| 32 | + "if": { |
| 33 | + "prefix": "if", |
| 34 | + "body": "\nif (${1:/* condition */}) {\n\t${0:/* code */}\n}\n", |
| 35 | + "description": "Code snippet for if()", |
| 36 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 37 | + }, |
| 38 | + "ifel": { |
| 39 | + "prefix": "ifel", |
| 40 | + "body": "\nif (${1:/* condition */}) {\n\t${2:/* code */}\n}\nelse {\n\t${0:/* code */}\n}\n", |
| 41 | + "description": "Code snippet for if() else", |
| 42 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 43 | + }, |
| 44 | + "ifelif": { |
| 45 | + "prefix": "ifelif", |
| 46 | + "body": "\nif (${1:/* condition */}) {\n\t${2:/* code */}\n}\nelse if(${3:/* condition */}) {\n\t${4:/* code */}\n}\nelse {\n\t${0:/* code */}\n}\n", |
| 47 | + "description": "Code snippet for if() else if() else", |
| 48 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 49 | + }, |
| 50 | + "else": { |
| 51 | + "prefix": "else", |
| 52 | + "body": "\nelse\n{\n\t${0:/* code */}\n}\n", |
| 53 | + "description": "Code snippet for else", |
| 54 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 55 | + }, |
| 56 | + "elif": { |
| 57 | + "prefix": "elif", |
| 58 | + "body": "\nelse if (${1:/* condition */})\n{\n\t${0:/* code */}\n}\n", |
| 59 | + "description": "Code snippet for else if ()", |
| 60 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 61 | + }, |
| 62 | + "switch": { |
| 63 | + "prefix": "switch", |
| 64 | + "body": "\nswitch (${1:expression})\n{\n\tcase ${2:/* constant-expression */}:\n\t\t${3:/* code */}\n\t\tbreak;\n\n\tdefault:\n\t\tbreak;\n}", |
| 65 | + "description": "Code snippet for switch", |
| 66 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 67 | + }, |
| 68 | + "main": { |
| 69 | + "prefix": "main", |
| 70 | + "body": "\nint main(int argc, char const *argv[])\n{\n\t${1:/* code */}\n\treturn 0;\n}\n", |
| 71 | + "description": "Code snippet for main()", |
| 72 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 73 | + }, |
| 74 | + "do": { |
| 75 | + "prefix": "do_", |
| 76 | + "body": "\ndo\n{\n\t${0:/* code */}\n} while (${1:/* condition */});\n", |
| 77 | + "description": "Code snippet for do while loop", |
| 78 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 79 | + }, |
| 80 | + "for": { |
| 81 | + "prefix": "for", |
| 82 | + "body": "\nfor(${1:size_t} ${2:i} = 0; $2 < ${3:count}; ${4:$2++})\n{\n\t${0:/* code */}\n}\n", |
| 83 | + "description": "Code snippet for for loop", |
| 84 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 85 | + }, |
| 86 | + "forr": { |
| 87 | + "prefix": "forr", |
| 88 | + "body": "\nfor(int ${1:i} = ${2:length} - 1; $1 >= 0; ${3:$1--})\n{\n\t${0:/* code */}\n}\n", |
| 89 | + "description": "Code snippet for reverse for loop", |
| 90 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 91 | + }, |
| 92 | + "foreach": { |
| 93 | + "prefix": "foreach", |
| 94 | + "body": "\nfor(${1:object} = ${2:var} in ${3:collection})\n{\n\t${0:/* code */}\n}\n", |
| 95 | + "description": "Code snippet for foreach loop", |
| 96 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 97 | + }, |
| 98 | + "forrange": { |
| 99 | + "prefix": "forrange", |
| 100 | + "body": "\nfor(auto&& ${1:i} : ${2:v})\n{\n\t$0\n}\n", |
| 101 | + "description": "Code snippet for range-based forloop", |
| 102 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 103 | + }, |
| 104 | + "while": { |
| 105 | + "prefix": "while", |
| 106 | + "body": "\nwhile(${1:/* condition */}){\n\t${2:/* code */}\n}\n", |
| 107 | + "description": "Code snippet for while loop", |
| 108 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 109 | + }, |
| 110 | + "ifd": { |
| 111 | + "prefix": "ifnd", |
| 112 | + "body": "\n#if defined($1)\n\n${0}\n\n#endif // $1\n", |
| 113 | + "description": "Code snippet for if defined()", |
| 114 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 115 | + }, |
| 116 | + "ifnd": { |
| 117 | + "prefix": "ifnd", |
| 118 | + "body": "\n#if !defined($1)\n#define ${1:MACRO}\n\n${0}\n\n#endif // $1\n", |
| 119 | + "description": "Code snippet for if !defined()", |
| 120 | + "scope": "source.c, source.objc, source.c++, source.objc++" |
| 121 | + }, |
| 122 | + "mitl": { |
| 123 | + "prefix": "mitl", |
| 124 | + "body": "\n// The MIT License (MIT)\n\n// Copyright (c) ${1:YEAR} ${2:NAME}\n\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the \"Software\"),\n// to deal in the Software without restriction, including without limitation\n// the rights to use, copy, modify, merge, publish, distribute, sublicense,\n// and/or sell copies of the Software, and to permit persons to whom the\n// Software is furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER\n// DEALINGS IN THE SOFTWARE.\n\n${0:/* code */}\n", |
| 125 | + "description": "Code snippet for MIT License", |
| 126 | + "scope": "" |
| 127 | + }, |
| 128 | + "namesp": { |
| 129 | + "prefix": "namesp", |
| 130 | + "body": "\nnamespace ${1:name}\n{\n\t$0\n} // $1\n", |
| 131 | + "description": "Code snippet for namespace", |
| 132 | + "scope": "source.c++, source.objc++" |
| 133 | + }, |
| 134 | + "try": { |
| 135 | + "prefix": "try", |
| 136 | + "body": "\ntry\n{\n\t${1:/* code */}\n}\ncatch(${2:const std::exception& e})\n{\n\t${0:std::cerr << e.what() << '\\n';}\n}\n", |
| 137 | + "description": "Code snippet for try catch block", |
| 138 | + "scope": "source.c++, source.objc++, source.c++11" |
| 139 | + } |
| 140 | +} |
0 commit comments