{ "enum": { "prefix": "enum", "description": "enumeration", "body": "enum ${1:MyEnum} { ${2:Item} \\};" }, "sim": { "prefix": "sim", "description": "static int main", "body": [ "static int Main(string[] args)", "{", "\t$0", "\\}" ] }, "svm": { "prefix": "svm", "description": "static void main", "body": [ "static void Main(string[] args)", "{", "\t$0", "\\}" ] }, "prop": { "prefix": "prop", "description": "Simple property declaration", "body": "public ${1:int} ${2:MyProperty} { get; set; \\}" }, "propfull": { "prefix": "propfull", "description": "Full property declaration", "body": [ "private ${1:int} ${2:_myProperty};", "", "public $1 ${3:MyProperty}", "{", "\tget { return $2; \\}", "\tset { $2 = value; \\}", "\\}" ] }, "propg": { "prefix": "propg", "description": "Property with a private setter", "body": "public ${1:int} ${2:MyProperty} { get; private set; \\}" }, "elif": { "prefix": "elif", "description": "else if", "body": [ "else if ($1)", "{", "\t$0", "\\}" ] }, "elseif": { "prefix": "elseif", "description": "else if", "body": [ "else if ($1)", "{", "\t$0", "\\}" ] }, "switch": { "prefix": "switch", "description": "switch statement", "body": [ "switch (${1:statement})", "{", "\tcase ${2:value}:", "\t\tbreak;", "", "\tdefault:", "\t\t$0break;", "\\}" ] }, "case": { "prefix": "case", "description": "case", "body": [ "case ${1:value}:", "\t$2", "\tbreak;" ] }, "throw": { "prefix": "throw", "description": "throw", "body": "throw new $1Exception(\"$2\");" }, "from": { "prefix": "from", "description": "LINQ syntax", "body": [ "var ${1:seq} =", "\tfrom ${2:item1} in ${3:items1}", "\tjoin ${4:item2} in ${5:items2} on $2.${6:prop1} equals $4.${7:prop2}", "\tselect ${8:$2.prop3}", "\twhere ${9:clause}" ] }, "da": { "prefix": "da", "description": "Debug.Assert", "body": "Debug.Assert(${1:true});" }, "cw": { "prefix": "cw", "description": "Console.WriteLine", "body": "Console.WriteLine(\"$1\");" }, "cr": { "prefix": "cr", "description": "Console.ReadLine", "body": "Console.ReadLine();" }, "mbox": { "prefix": "mbox", "description": "Message box", "body": "MessageBox.Show(\"${1:message}\");" }, "equals": { "prefix": "equals", "description": "Equality for a type", "body": [ "public override bool Equals(object obj) => Equals(obj as ${1:TYPE});", "", "public bool Equals($1 other) // IEquatable<$1>", "{", "\tif (object.ReferenceEquals(other, null))", "\t\treturn false;", "\tif (object.ReferenceEquals(this, other))", "\t\treturn true;", "\tif (this.GetType() != other.GetType())", "\t\treturn false;", "\t$0", "\treturn base.Equals(other);", "\\}", "", "public override int GetHashCode() => base.GetHashCode();", "", "public static bool operator ==($1 x, $1 y) =>", "\t(object.ReferenceEquals(x, null) && object.ReferenceEquals(y, null))", "\t|| (!object.ReferenceEquals(x, null) && x.Equals(y));", "", "public static bool operator !=($1 x, $1 y) => !(x == y);", "" ] }, "mth": { "prefix": "mth", "description": "Method", "body": [ "${1:public} ${2:void} ${3:MyMethod}($4)", "{", "\t$0", "\\}" ] }, "mths": { "prefix": "mths", "description": "Static method", "body": [ "${1:public} static ${2:void} ${3:MyMethod}($4)", "{", "\t$0", "\\}" ] }, "///": { "prefix": "///", "description": "XML summary comment", "body": [ "/// ", "/// $0", "/// " ] }, "$2" }, "$2" }, "$0" }, "$0" } }