|
3 | 3 | "prefix": "main", |
4 | 4 | "body": [ |
5 | 5 | "public fn i32 main(i32 argc, const char** argv) {", |
6 | | - " ${1:/* code */}", |
7 | | - " return 0;", |
| 6 | + "\t${1:/* code */}", |
| 7 | + "\treturn 0;", |
8 | 8 | "}" |
9 | 9 | ], |
10 | 10 | "description": "main(..)" |
|
13 | 13 | "prefix": "mainv", |
14 | 14 | "body": [ |
15 | 15 | "public fn i32 main() {", |
16 | | - " ${1:/* code */}", |
17 | | - " return 0;", |
| 16 | + "\t${1:/* code */}", |
| 17 | + "\treturn 0;", |
18 | 18 | "}" |
19 | 19 | ], |
20 | 20 | "description": "main()" |
21 | 21 | }, |
22 | 22 | "module": { |
23 | | - "prefix": "module", |
| 23 | + "prefix": "mod", |
24 | 24 | "body": [ |
25 | 25 | "module ${1:/* module name */};" |
26 | 26 | ], |
27 | 27 | "description": "module name" |
28 | 28 | }, |
29 | 29 | "import": { |
30 | | - "prefix": "import", |
| 30 | + "prefix": "im", |
31 | 31 | "body": [ |
32 | | - "import ${1:stdio}${2: local};" |
| 32 | + "import ${1:${2:stdio} as ${3:io}}${5: local};" |
33 | 33 | ], |
34 | 34 | "description": "import libname" |
35 | 35 | }, |
36 | 36 | "if": { |
37 | 37 | "prefix": "if", |
38 | 38 | "body": [ |
39 | 39 | "if(${1:/* condition */}) {", |
40 | | - " ${0:/* code */}", |
| 40 | + "\t${2:/* code */}", |
41 | 41 | "}" |
42 | 42 | ], |
43 | 43 | "description": "if(..) {..}" |
44 | 44 | }, |
45 | 45 | "else": { |
46 | | - "prefix": "else", |
| 46 | + "prefix": "el", |
47 | 47 | "body": [ |
48 | 48 | "else {", |
49 | | - " ${0:/* code */}", |
| 49 | + "\t${1:/* code */}", |
50 | 50 | "}" |
51 | 51 | ], |
52 | 52 | "description": "else {..}" |
|
55 | 55 | "prefix": "ife", |
56 | 56 | "body": [ |
57 | 57 | "if(${1:/* condition */}) {", |
58 | | - " ${2:/* code */}", |
| 58 | + "\t${2:/* code */}", |
59 | 59 | "} else {", |
60 | | - " ${0:/* code */}", |
| 60 | + "\t${3:/* code */}", |
61 | 61 | "}" |
62 | 62 | ], |
63 | 63 | "description": "if/else" |
|
66 | 66 | "prefix": "do", |
67 | 67 | "body": [ |
68 | 68 | "do {", |
69 | | - " ${2:/* code */}", |
| 69 | + "\t${2:/* code */}", |
70 | 70 | "} while(${1:/* condition */});" |
71 | 71 | ], |
72 | 72 | "description": "do {..} while(..)" |
73 | 73 | }, |
74 | 74 | "while": { |
75 | | - "prefix": "while", |
| 75 | + "prefix": "wh", |
76 | 76 | "body": [ |
77 | 77 | "while(${1:/* condition */}) {", |
78 | | - " ${0:/* code */}", |
| 78 | + "\t${2:/* code */}", |
79 | 79 | "}" |
80 | 80 | ], |
81 | 81 | "description": "while(..) {..}" |
82 | 82 | }, |
83 | 83 | "for": { |
84 | 84 | "prefix": "for", |
85 | 85 | "body": [ |
86 | | - "for(${1:u32 i=0}; ${2:i<n}; ${3:++i}) {", |
87 | | - " ${0:/* code */}", |
| 86 | + "for(${1:i32 i=0}; ${2:i<${3:n}}; ${4:++i}) {", |
| 87 | + "\t${5:/* code */}", |
88 | 88 | "}" |
89 | 89 | ], |
90 | 90 | "description": "for(..) {..}" |
91 | 91 | }, |
92 | 92 | "fn": { |
93 | 93 | "prefix": "fn", |
94 | 94 | "body": [ |
95 | | - "fn ${1:void} ${2:name}(${3}) {", |
96 | | - " ${0:/* code */}", |
| 95 | + "fn ${1:void} ${2:/*name*/}(${3}) {", |
| 96 | + "\t${4:/* code */}", |
97 | 97 | "}" |
98 | 98 | ], |
99 | 99 | "description": "fn {type} {name}(..) {..}" |
100 | 100 | }, |
101 | | - "fn_attribs": { |
102 | | - "prefix": "fna", |
103 | | - "body": [ |
104 | | - "fn ${1:void} ${2:name}(${3}) @(${4:noused}) {", |
105 | | - " ${0:/* code */}", |
106 | | - "}" |
107 | | - ], |
108 | | - "description": "fn {type} {name}(..) @(..) {..}" |
109 | | - }, |
110 | | - "fn_cname": { |
| 101 | + "fn_attrib": { |
111 | 102 | "prefix": "fnc", |
112 | 103 | "body": [ |
113 | | - "fn ${1:void} ${2:name}(${3}) @(${4:cname=\"${5:c_func}\"});" |
| 104 | + "fn ${1:void} ${2:/*name*/}(${3})${4: @(${5:cname=\"${6:c_func}\"${7:, opaque}})}${8:;}" |
114 | 105 | ], |
115 | | - "description": "fn {type} {name}(..) @(cname=\"{c_func}\");" |
| 106 | + "description": "fn {type} {name}(..) @(..);" |
116 | 107 | }, |
117 | 108 | "enum": { |
118 | | - "prefix": "enum", |
| 109 | + "prefix": "en", |
119 | 110 | "body": [ |
120 | 111 | "type ${1:/* name */} enum ${2:u32} {", |
121 | | - " ${0:/* fields */}", |
| 112 | + "\t${3:/* fields */}", |
122 | 113 | "}" |
123 | 114 | ], |
124 | 115 | "description": "type {name} enum {type} {..}" |
125 | 116 | }, |
| 117 | + "enum_attrib": { |
| 118 | + "prefix": "enc", |
| 119 | + "body": [ |
| 120 | + "type ${1:/* name */} enum ${2:u32}${3: @(${4:cname=\"${5:c_func}\"${6:, opaque}})}${7:;}" |
| 121 | + ], |
| 122 | + "description": "type {name} enum {type} @(..);" |
| 123 | + }, |
| 124 | + "union": { |
| 125 | + "prefix": "un", |
| 126 | + "body": [ |
| 127 | + "${1:type ${2:/* name */} }union {", |
| 128 | + "\t${3:/* fields */}", |
| 129 | + "}" |
| 130 | + ], |
| 131 | + "description": "type {name} union {type} {..}" |
| 132 | + }, |
| 133 | + "union_attrib": { |
| 134 | + "prefix": "unc", |
| 135 | + "body": [ |
| 136 | + "type ${1:/* name */} union${2: @(${3:cname=\"${4:c_func}\"${5:, opaque}})}${7:;}" |
| 137 | + ], |
| 138 | + "description": "type {name} union {type} @(..);" |
| 139 | + }, |
126 | 140 | "struct": { |
127 | | - "prefix": "struct", |
| 141 | + "prefix": "st", |
128 | 142 | "body": [ |
129 | | - "type ${1:/* name */} struct {", |
130 | | - " ${0:/* fields */}", |
| 143 | + "${1:type ${2:/* name */} }struct {", |
| 144 | + "\t${3:/* fields */}", |
131 | 145 | "}" |
132 | 146 | ], |
133 | 147 | "description": "type {name} struct {..}" |
134 | 148 | }, |
135 | 149 | "struct_cname": { |
136 | | - "prefix": "structc", |
| 150 | + "prefix": "stc", |
137 | 151 | "body": [ |
138 | | - "type ${1:/* name */} struct @(${2:crame=\"${3:c_func}\"}${4:, opaque}) {", |
139 | | - " ${0:/* fields */}", |
140 | | - "}" |
| 152 | + "type ${1:/* name */} struct ${2: @(${3:cname=\"${4:c_func}\"${5:, opaque}})}${7:;}" |
141 | 153 | ], |
142 | | - "description": "type {name} struct @(cname=\"{c_func} {opaque}\") {..}" |
| 154 | + "description": "type {name} struct @(..);" |
143 | 155 | } |
144 | 156 | } |
0 commit comments