|
4 | 4 | "If you want to provide a fix or improvement, please create a pull request against the original repository.", |
5 | 5 | "Once accepted there, we are happy to receive an update request." |
6 | 6 | ], |
7 | | - "version": "https://github.com/dotnet/csharp-tmLanguage/commit/542a4e220e58813ea67cdd91b3a454e6e4491aab", |
| 7 | + "version": "https://github.com/dotnet/csharp-tmLanguage/commit/925295380addea5b27f419a423c708f421347c5c", |
8 | 8 | "name": "C#", |
9 | 9 | "scopeName": "source.cs", |
10 | 10 | "patterns": [ |
|
116 | 116 | "include": "#type-declarations" |
117 | 117 | }, |
118 | 118 | { |
119 | | - "include": "#field-declaration" |
| 119 | + "include": "#property-declaration" |
120 | 120 | }, |
121 | 121 | { |
122 | | - "include": "#event-declaration" |
| 122 | + "include": "#field-declaration" |
123 | 123 | }, |
124 | 124 | { |
125 | | - "include": "#property-declaration" |
| 125 | + "include": "#event-declaration" |
126 | 126 | }, |
127 | 127 | { |
128 | 128 | "include": "#indexer-declaration" |
|
162 | 162 | "include": "#comment" |
163 | 163 | }, |
164 | 164 | { |
165 | | - "include": "#event-declaration" |
| 165 | + "include": "#property-declaration" |
166 | 166 | }, |
167 | 167 | { |
168 | | - "include": "#property-declaration" |
| 168 | + "include": "#event-declaration" |
169 | 169 | }, |
170 | 170 | { |
171 | 171 | "include": "#indexer-declaration" |
|
1001 | 1001 | ] |
1002 | 1002 | }, |
1003 | 1003 | "property-declaration": { |
1004 | | - "begin": "(?x)\n(?!.*\\b(?:class|interface|struct|enum|event)\\b)\\s*\n(?<return-type>\n (?<type-name>\n (?:\n (?:ref\\s+(?:readonly\\s+)?)? # ref return\n (?:\n (?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\s*\\:\\:\\s*)? # alias-qualification\n (?<name-and-type-args> # identifier + type arguments (if any)\n \\g<identifier>\\s*\n (?<type-args>\\s*<(?:[^<>]|\\g<type-args>)+>\\s*)?\n )\n (?:\\s*\\.\\s*\\g<name-and-type-args>)* | # Are there any more names being dotted into?\n (?<tuple>\\s*\\((?:[^\\(\\)]|\\g<tuple>)+\\))\n )\n (?:\\s*\\?\\s*)? # nullable suffix?\n (?:\\s*\\[(?:\\s*,\\s*)*\\]\\s*)* # array suffix?\n )\n )\\s+\n)\n(?<interface-name>\\g<type-name>\\s*\\.\\s*)?\n(?<property-name>\\g<identifier>)\\s*\n(?=\\{|=>|$)", |
| 1004 | + "begin": "(?x)\n\n# The negative lookahead below ensures that we don't match nested types\n# or other declarations as properties.\n(?![[:word:][:space:]]*\\b(?:class|interface|struct|enum|event)\\b)\n\n(?<return-type>\n (?<type-name>\n (?:\n (?:ref\\s+(?:readonly\\s+)?)? # ref return\n (?:\n (?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\s*\\:\\:\\s*)? # alias-qualification\n (?<name-and-type-args> # identifier + type arguments (if any)\n \\g<identifier>\\s*\n (?<type-args>\\s*<(?:[^<>]|\\g<type-args>)+>\\s*)?\n )\n (?:\\s*\\.\\s*\\g<name-and-type-args>)* | # Are there any more names being dotted into?\n (?<tuple>\\s*\\((?:[^\\(\\)]|\\g<tuple>)+\\))\n )\n (?:\\s*\\?\\s*)? # nullable suffix?\n (?:\\s*\\[(?:\\s*,\\s*)*\\]\\s*)* # array suffix?\n )\n )\\s+\n)\n(?<interface-name>\\g<type-name>\\s*\\.\\s*)?\n(?<property-name>\\g<identifier>)\\s*\n(?=\\{|=>|$)", |
1005 | 1005 | "beginCaptures": { |
1006 | 1006 | "1": { |
1007 | 1007 | "patterns": [ |
|
0 commit comments