addons/isl/public/generated/textmate/source_thrift_TextMateGrammar.plistblame
View source
b69ab311<!-- @generated -->
b69ab312<?xml version="1.0" encoding="UTF-8"?>
b69ab313<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
b69ab314<plist version="1.0">
b69ab315<dict>
b69ab316 <key>fileTypes</key>
b69ab317 <array>
b69ab318 <string>thrift</string>
b69ab319 </array>
b69ab3110 <key>keyEquivalent</key>
b69ab3111 <string>^~T</string>
b69ab3112 <key>name</key>
b69ab3113 <string>Thrift</string>
b69ab3114 <key>patterns</key>
b69ab3115 <array>
b69ab3116 <dict>
b69ab3117 <key>include</key>
b69ab3118 <string>#comments</string>
b69ab3119 </dict>
b69ab3120 <dict>
b69ab3121 <key>captures</key>
b69ab3122 <dict>
b69ab3123 <key>1</key>
b69ab3124 <dict>
b69ab3125 <key>name</key>
b69ab3126 <string>keyword.other.include.thrift</string>
b69ab3127 </dict>
b69ab3128 <key>2</key>
b69ab3129 <dict>
b69ab3130 <key>name</key>
b69ab3131 <string>string.quoted.thrift</string>
b69ab3132 </dict>
b69ab3133 <key>3</key>
b69ab3134 <dict>
b69ab3135 <key>name</key>
b69ab3136 <string>punctuation.definition.string.begin.thrift</string>
b69ab3137 </dict>
b69ab3138 <key>4</key>
b69ab3139 <dict>
b69ab3140 <key>name</key>
b69ab3141 <string>punctuation.definition.string.end.thrift</string>
b69ab3142 </dict>
b69ab3143 </dict>
b69ab3144 <key>match</key>
b69ab3145 <string>(?&lt;!\S)(include)(?!\S)(?:\s+((['"])(?&gt;.*?(\3))))?</string>
b69ab3146 <key>name</key>
b69ab3147 <string>meta.include.thrift</string>
b69ab3148 </dict>
b69ab3149 <dict>
b69ab3150 <key>captures</key>
b69ab3151 <dict>
b69ab3152 <key>1</key>
b69ab3153 <dict>
b69ab3154 <key>name</key>
b69ab3155 <string>keyword.other.cpp-include.thrift</string>
b69ab3156 </dict>
b69ab3157 <key>2</key>
b69ab3158 <dict>
b69ab3159 <key>name</key>
b69ab3160 <string>string.quoted.thrift</string>
b69ab3161 </dict>
b69ab3162 <key>3</key>
b69ab3163 <dict>
b69ab3164 <key>name</key>
b69ab3165 <string>punctuation.definition.string.begin.thrift</string>
b69ab3166 </dict>
b69ab3167 <key>4</key>
b69ab3168 <dict>
b69ab3169 <key>name</key>
b69ab3170 <string>punctuation.definition.string.end.thrift</string>
b69ab3171 </dict>
b69ab3172 </dict>
b69ab3173 <key>match</key>
b69ab3174 <string>(?&lt;!\S)(cpp_include)(?!\S)(?:\s+((['"])(?&gt;.*?(\3))))?</string>
b69ab3175 <key>name</key>
b69ab3176 <string>meta.cpp-include.thrift</string>
b69ab3177 </dict>
b69ab3178 <dict>
b69ab3179 <key>captures</key>
b69ab3180 <dict>
b69ab3181 <key>1</key>
b69ab3182 <dict>
b69ab3183 <key>name</key>
b69ab3184 <string>keyword.other.namespace.thrift</string>
b69ab3185 </dict>
b69ab3186 <key>2</key>
b69ab3187 <dict>
b69ab3188 <key>name</key>
b69ab3189 <string>support.other.namespace-language.thrift</string>
b69ab3190 </dict>
b69ab3191 <key>3</key>
b69ab3192 <dict>
b69ab3193 <key>name</key>
b69ab3194 <string>variable.other.namespace.thrift</string>
b69ab3195 </dict>
b69ab3196 </dict>
b69ab3197 <key>match</key>
b69ab3198 <string>(?&lt;!\S)(namespace)(?!\S)(?:\s+([a-zA-Z_][\w.]*)(?:\s+([a-zA-Z_][\w.]*))?)?</string>
b69ab3199 <key>name</key>
b69ab31100 <string>meta.namespace.thrift</string>
b69ab31101 </dict>
b69ab31102 <dict>
b69ab31103 <key>captures</key>
b69ab31104 <dict>
b69ab31105 <key>1</key>
b69ab31106 <dict>
b69ab31107 <key>name</key>
b69ab31108 <string>keyword.other.namespace.thrift</string>
b69ab31109 </dict>
b69ab31110 <key>2</key>
b69ab31111 <dict>
b69ab31112 <key>name</key>
b69ab31113 <string>variable.other.namespace.thrift</string>
b69ab31114 </dict>
b69ab31115 </dict>
b69ab31116 <key>match</key>
b69ab31117 <string>(?&lt;!\S)((?:php|xsd)_namespace)(?!\S)(?:\s+([a-zA-Z_][\w.]*))?</string>
b69ab31118 <key>name</key>
b69ab31119 <string>meta.namespace.thrift</string>
b69ab31120 </dict>
b69ab31121 <dict>
b69ab31122 <key>captures</key>
b69ab31123 <dict>
b69ab31124 <key>1</key>
b69ab31125 <dict>
b69ab31126 <key>name</key>
b69ab31127 <string>invalid.deprecated.namespace.thrift</string>
b69ab31128 </dict>
b69ab31129 <key>2</key>
b69ab31130 <dict>
b69ab31131 <key>name</key>
b69ab31132 <string>variable.other.namespace.thrift</string>
b69ab31133 </dict>
b69ab31134 </dict>
b69ab31135 <key>match</key>
b69ab31136 <string>(?&lt;!\S)((?:cpp|ruby|csharp)_namespace|py_module|(?:java|perl)_package|smalltalk_(?:category|prefix)|cocoa_prefix)(?!\S)(?:\s+([a-zA-Z_][\w.]*))?</string>
b69ab31137 </dict>
b69ab31138 <dict>
b69ab31139 <key>begin</key>
b69ab31140 <string>(?=(struct|s?enum|union|service|const|typedef|exception)\b)</string>
b69ab31141 <key>comment</key>
b69ab31142 <string>begin the definition list</string>
b69ab31143 <key>end</key>
b69ab31144 <string>(?x)$.^ # this regex should never end</string>
b69ab31145 <key>patterns</key>
b69ab31146 <array>
b69ab31147 <dict>
b69ab31148 <key>include</key>
b69ab31149 <string>#comments</string>
b69ab31150 </dict>
b69ab31151 <dict>
b69ab31152 <key>begin</key>
b69ab31153 <string>(?&lt;!\S)(const)(?!\S)(?:\s+(?&lt;ft&gt;map\s*&lt;\s*\g&lt;ft&gt;\s*,\s*\g&lt;ft&gt;\s*&gt;|set\s*&lt;\s*\g&lt;ft&gt;\s*&gt;|list\s*&lt;\s*\g&lt;ft&gt;\s*&gt;\s*cpp_type|[a-zA-Z_][\w.]*)(?:\s+([a-zA-Z_][\w.]*)(?:\s*=)?)?)?</string>
b69ab31154 <key>beginCaptures</key>
b69ab31155 <dict>
b69ab31156 <key>1</key>
b69ab31157 <dict>
b69ab31158 <key>name</key>
b69ab31159 <string>keyword.other.const.thrift</string>
b69ab31160 </dict>
b69ab31161 <key>2</key>
b69ab31162 <dict>
b69ab31163 <key>name</key>
b69ab31164 <string>storage.type.const.thrift</string>
b69ab31165 </dict>
b69ab31166 <key>3</key>
b69ab31167 <dict>
b69ab31168 <key>name</key>
b69ab31169 <string>variable.other.const.thrift</string>
b69ab31170 </dict>
b69ab31171 </dict>
b69ab31172 <key>end</key>
b69ab31173 <string>$|^</string>
b69ab31174 <key>name</key>
b69ab31175 <string>meta.const.thrift</string>
b69ab31176 <key>patterns</key>
b69ab31177 <array>
b69ab31178 <dict>
b69ab31179 <key>include</key>
b69ab31180 <string>#comments</string>
b69ab31181 </dict>
b69ab31182 <dict>
b69ab31183 <key>include</key>
b69ab31184 <string>#value</string>
b69ab31185 </dict>
b69ab31186 </array>
b69ab31187 </dict>
b69ab31188 <dict>
b69ab31189 <key>begin</key>
b69ab31190 <string>(?&lt;!\S)(typedef)(?!\S)(?:\s+(?&lt;ft&gt;map\s*&lt;\s*\g&lt;ft&gt;\s*,\s*\g&lt;ft&gt;\s*&gt;|set\s*&lt;\s*\g&lt;ft&gt;\s*&gt;|list\s*&lt;\s*\g&lt;ft&gt;\s*&gt;\s*cpp_type|[a-zA-Z_][\w.]*)(?:\s+([a-zA-Z_][\w.]*))?)?</string>
b69ab31191 <key>beginCaptures</key>
b69ab31192 <dict>
b69ab31193 <key>1</key>
b69ab31194 <dict>
b69ab31195 <key>name</key>
b69ab31196 <string>keyword.other.typedef.thrift</string>
b69ab31197 </dict>
b69ab31198 <key>2</key>
b69ab31199 <dict>
b69ab31200 <key>name</key>
b69ab31201 <string>storage.type.typedef.thrift</string>
b69ab31202 </dict>
b69ab31203 <key>3</key>
b69ab31204 <dict>
b69ab31205 <key>name</key>
b69ab31206 <string>variable.other.typedef.thrift</string>
b69ab31207 </dict>
b69ab31208 </dict>
b69ab31209 <key>end</key>
b69ab31210 <string>$|^</string>
b69ab31211 <key>name</key>
b69ab31212 <string>meta.typedef.thrift</string>
b69ab31213 <key>patterns</key>
b69ab31214 <array>
b69ab31215 <dict>
b69ab31216 <key>include</key>
b69ab31217 <string>#comments</string>
b69ab31218 </dict>
b69ab31219 </array>
b69ab31220 </dict>
b69ab31221 <dict>
b69ab31222 <key>begin</key>
b69ab31223 <string>(?&lt;!\S)(union)(?!\S)(?:\s+([a-zA-Z_][\w.]*)\s*(?![^\s{]))?</string>
b69ab31224 <key>beginCaptures</key>
b69ab31225 <dict>
b69ab31226 <key>1</key>
b69ab31227 <dict>
b69ab31228 <key>name</key>
b69ab31229 <string>keyword.other.union.thrift</string>
b69ab31230 </dict>
b69ab31231 <key>2</key>
b69ab31232 <dict>
b69ab31233 <key>name</key>
b69ab31234 <string>entity.name.type.union.thrift</string>
b69ab31235 </dict>
b69ab31236 </dict>
b69ab31237 <key>end</key>
b69ab31238 <string>(?&lt;=\})|$</string>
b69ab31239 <key>name</key>
b69ab31240 <string>meta.union.thrift</string>
b69ab31241 <key>patterns</key>
b69ab31242 <array>
b69ab31243 <dict>
b69ab31244 <key>match</key>
b69ab31245 <string>(?&lt;!\S)xsd_all(?!\S)</string>
b69ab31246 <key>name</key>
b69ab31247 <string>keyword.other.xsd-all.thrift</string>
b69ab31248 </dict>
b69ab31249 <dict>
b69ab31250 <key>begin</key>
b69ab31251 <string>\{</string>
b69ab31252 <key>beginCaptures</key>
b69ab31253 <dict>
b69ab31254 <key>0</key>
b69ab31255 <dict>
b69ab31256 <key>name</key>
b69ab31257 <string>punctuation.section.union.begin.thrift</string>
b69ab31258 </dict>
b69ab31259 </dict>
b69ab31260 <key>end</key>
b69ab31261 <string>\}</string>
b69ab31262 <key>endCaptures</key>
b69ab31263 <dict>
b69ab31264 <key>0</key>
b69ab31265 <dict>
b69ab31266 <key>name</key>
b69ab31267 <string>punctuation.section.union.end.thrift</string>
b69ab31268 </dict>
b69ab31269 </dict>
b69ab31270 <key>patterns</key>
b69ab31271 <array>
b69ab31272 <dict>
b69ab31273 <key>include</key>
b69ab31274 <string>#comments</string>
b69ab31275 </dict>
b69ab31276 <dict>
b69ab31277 <key>include</key>
b69ab31278 <string>#field</string>
b69ab31279 </dict>
b69ab31280 </array>
b69ab31281 </dict>
b69ab31282 </array>
b69ab31283 </dict>
b69ab31284 <dict>
b69ab31285 <key>begin</key>
b69ab31286 <string>(?&lt;!\S)(enum)(?!\S)(?:\s+([a-zA-Z_][\w.]*)\s*(?![^\s{]))?</string>
b69ab31287 <key>beginCaptures</key>
b69ab31288 <dict>
b69ab31289 <key>1</key>
b69ab31290 <dict>
b69ab31291 <key>name</key>
b69ab31292 <string>keyword.other.enum.thrift</string>
b69ab31293 </dict>
b69ab31294 <key>2</key>
b69ab31295 <dict>
b69ab31296 <key>name</key>
b69ab31297 <string>entity.name.type.enum.thrift</string>
b69ab31298 </dict>
b69ab31299 </dict>
b69ab31300 <key>end</key>
b69ab31301 <string>(?&lt;=\})|$</string>
b69ab31302 <key>name</key>
b69ab31303 <string>meta.enum.thrift</string>
b69ab31304 <key>patterns</key>
b69ab31305 <array>
b69ab31306 <dict>
b69ab31307 <key>begin</key>
b69ab31308 <string>\{</string>
b69ab31309 <key>beginCaptures</key>
b69ab31310 <dict>
b69ab31311 <key>0</key>
b69ab31312 <dict>
b69ab31313 <key>name</key>
b69ab31314 <string>punctuation.section.enum.begin.thrift</string>
b69ab31315 </dict>
b69ab31316 </dict>
b69ab31317 <key>end</key>
b69ab31318 <string>\}</string>
b69ab31319 <key>endCaptures</key>
b69ab31320 <dict>
b69ab31321 <key>0</key>
b69ab31322 <dict>
b69ab31323 <key>name</key>
b69ab31324 <string>punctuation.section.enum.end.thrift</string>
b69ab31325 </dict>
b69ab31326 </dict>
b69ab31327 <key>patterns</key>
b69ab31328 <array>
b69ab31329 <dict>
b69ab31330 <key>captures</key>
b69ab31331 <dict>
b69ab31332 <key>1</key>
b69ab31333 <dict>
b69ab31334 <key>name</key>
b69ab31335 <string>variable.other.enum.thrift</string>
b69ab31336 </dict>
b69ab31337 <key>2</key>
b69ab31338 <dict>
b69ab31339 <key>name</key>
b69ab31340 <string>constant.numeric.integer.thrift</string>
b69ab31341 </dict>
b69ab31342 </dict>
b69ab31343 <key>match</key>
b69ab31344 <string>(?&lt;!\S)([a-zA-Z_][\w.]*)(?:\s*=\s*(\d*)(?:\s*[,;])?)?</string>
b69ab31345 </dict>
b69ab31346 <dict>
b69ab31347 <key>include</key>
b69ab31348 <string>#comments</string>
b69ab31349 </dict>
b69ab31350 <dict>
b69ab31351 <key>match</key>
b69ab31352 <string>\S</string>
b69ab31353 <key>name</key>
b69ab31354 <string>invalid.illegal.thrift</string>
b69ab31355 </dict>
b69ab31356 </array>
b69ab31357 </dict>
b69ab31358 </array>
b69ab31359 </dict>
b69ab31360 <dict>
b69ab31361 <key>begin</key>
b69ab31362 <string>(?&lt;!\S)(senum)(?!\S)(?:\s+([a-zA-Z_][\w.]*)\s*(?![^\s{]))?</string>
b69ab31363 <key>beginCaptures</key>
b69ab31364 <dict>
b69ab31365 <key>1</key>
b69ab31366 <dict>
b69ab31367 <key>name</key>
b69ab31368 <string>keyword.other.senum.thrift</string>
b69ab31369 </dict>
b69ab31370 <key>2</key>
b69ab31371 <dict>
b69ab31372 <key>name</key>
b69ab31373 <string>entity.name.type.senum.thrift</string>
b69ab31374 </dict>
b69ab31375 </dict>
b69ab31376 <key>end</key>
b69ab31377 <string>(?&lt;=\})|$</string>
b69ab31378 <key>name</key>
b69ab31379 <string>meta.senum.thrift</string>
b69ab31380 <key>patterns</key>
b69ab31381 <array>
b69ab31382 <dict>
b69ab31383 <key>begin</key>
b69ab31384 <string>\{</string>
b69ab31385 <key>beginCaptures</key>
b69ab31386 <dict>
b69ab31387 <key>0</key>
b69ab31388 <dict>
b69ab31389 <key>name</key>
b69ab31390 <string>punctuation.section.senum.begin.thrift</string>
b69ab31391 </dict>
b69ab31392 </dict>
b69ab31393 <key>end</key>
b69ab31394 <string>\}</string>
b69ab31395 <key>endCaptures</key>
b69ab31396 <dict>
b69ab31397 <key>0</key>
b69ab31398 <dict>
b69ab31399 <key>name</key>
b69ab31400 <string>punctuation.section.senum.end.thrift</string>
b69ab31401 </dict>
b69ab31402 </dict>
b69ab31403 <key>patterns</key>
b69ab31404 <array>
b69ab31405 <dict>
b69ab31406 <key>captures</key>
b69ab31407 <dict>
b69ab31408 <key>1</key>
b69ab31409 <dict>
b69ab31410 <key>name</key>
b69ab31411 <string>variable.other.senum.thrift</string>
b69ab31412 </dict>
b69ab31413 </dict>
b69ab31414 <key>match</key>
b69ab31415 <string>(?&lt;!\S)([a-zA-Z_][\w.]*)(?:\s*[,;])?</string>
b69ab31416 </dict>
b69ab31417 <dict>
b69ab31418 <key>include</key>
b69ab31419 <string>#comments</string>
b69ab31420 </dict>
b69ab31421 <dict>
b69ab31422 <key>match</key>
b69ab31423 <string>\S</string>
b69ab31424 <key>name</key>
b69ab31425 <string>invalid.illegal.thrift</string>
b69ab31426 </dict>
b69ab31427 </array>
b69ab31428 </dict>
b69ab31429 </array>
b69ab31430 </dict>
b69ab31431 <dict>
b69ab31432 <key>begin</key>
b69ab31433 <string>(?&lt;!\S)(struct)(?!\S)(?:\s+([a-zA-Z_][\w.]*)\s*(?![^\s{]))?</string>
b69ab31434 <key>beginCaptures</key>
b69ab31435 <dict>
b69ab31436 <key>1</key>
b69ab31437 <dict>
b69ab31438 <key>name</key>
b69ab31439 <string>keyword.other.struct.thrift</string>
b69ab31440 </dict>
b69ab31441 <key>2</key>
b69ab31442 <dict>
b69ab31443 <key>name</key>
b69ab31444 <string>entity.name.type.struct.thrift</string>
b69ab31445 </dict>
b69ab31446 </dict>
b69ab31447 <key>end</key>
b69ab31448 <string>(?&lt;=\})|$</string>
b69ab31449 <key>name</key>
b69ab31450 <string>meta.struct.thrift</string>
b69ab31451 <key>patterns</key>
b69ab31452 <array>
b69ab31453 <dict>
b69ab31454 <key>match</key>
b69ab31455 <string>(?&lt;!\S)xsd_all(?!\S)</string>
b69ab31456 <key>name</key>
b69ab31457 <string>keyword.other.xsd-all.thrift</string>
b69ab31458 </dict>
b69ab31459 <dict>
b69ab31460 <key>begin</key>
b69ab31461 <string>\{</string>
b69ab31462 <key>beginCaptures</key>
b69ab31463 <dict>
b69ab31464 <key>0</key>
b69ab31465 <dict>
b69ab31466 <key>name</key>
b69ab31467 <string>punctuation.section.struct.begin.thrift</string>
b69ab31468 </dict>
b69ab31469 </dict>
b69ab31470 <key>end</key>
b69ab31471 <string>\}</string>
b69ab31472 <key>endCaptures</key>
b69ab31473 <dict>
b69ab31474 <key>0</key>
b69ab31475 <dict>
b69ab31476 <key>name</key>
b69ab31477 <string>punctuation.section.struct.end.thrift</string>
b69ab31478 </dict>
b69ab31479 </dict>
b69ab31480 <key>patterns</key>
b69ab31481 <array>
b69ab31482 <dict>
b69ab31483 <key>include</key>
b69ab31484 <string>#comments</string>
b69ab31485 </dict>
b69ab31486 <dict>
b69ab31487 <key>include</key>
b69ab31488 <string>#field</string>
b69ab31489 </dict>
b69ab31490 </array>
b69ab31491 </dict>
b69ab31492 </array>
b69ab31493 </dict>
b69ab31494 <dict>
b69ab31495 <key>begin</key>
b69ab31496 <string>(?&lt;!\S)(exception)(?!\S)(?:\s+([a-zA-Z_][\w.]*)\s*(?![^\s{]))?</string>
b69ab31497 <key>beginCaptures</key>
b69ab31498 <dict>
b69ab31499 <key>1</key>
b69ab31500 <dict>
b69ab31501 <key>name</key>
b69ab31502 <string>keyword.other.exception.thrift</string>
b69ab31503 </dict>
b69ab31504 <key>2</key>
b69ab31505 <dict>
b69ab31506 <key>name</key>
b69ab31507 <string>entity.name.type.exception.thrift</string>
b69ab31508 </dict>
b69ab31509 </dict>
b69ab31510 <key>end</key>
b69ab31511 <string>(?&lt;=\})|$</string>
b69ab31512 <key>name</key>
b69ab31513 <string>meta.exception.thrift</string>
b69ab31514 <key>patterns</key>
b69ab31515 <array>
b69ab31516 <dict>
b69ab31517 <key>begin</key>
b69ab31518 <string>\{</string>
b69ab31519 <key>beginCaptures</key>
b69ab31520 <dict>
b69ab31521 <key>0</key>
b69ab31522 <dict>
b69ab31523 <key>name</key>
b69ab31524 <string>punctuation.section.exception.begin.thrift</string>
b69ab31525 </dict>
b69ab31526 </dict>
b69ab31527 <key>end</key>
b69ab31528 <string>\}</string>
b69ab31529 <key>endCaptures</key>
b69ab31530 <dict>
b69ab31531 <key>0</key>
b69ab31532 <dict>
b69ab31533 <key>name</key>
b69ab31534 <string>punctuation.section.exception.end.thrift</string>
b69ab31535 </dict>
b69ab31536 </dict>
b69ab31537 <key>patterns</key>
b69ab31538 <array>
b69ab31539 <dict>
b69ab31540 <key>include</key>
b69ab31541 <string>#comments</string>
b69ab31542 </dict>
b69ab31543 <dict>
b69ab31544 <key>include</key>
b69ab31545 <string>#field</string>
b69ab31546 </dict>
b69ab31547 </array>
b69ab31548 </dict>
b69ab31549 </array>
b69ab31550 </dict>
b69ab31551 <dict>
b69ab31552 <key>begin</key>
b69ab31553 <string>(?&lt;!\S)(service)(?!\S)(?:\s+([a-zA-z_][\w.]*)(?:\s+(extends)(?:\s+([a-zA-Z_][\w.]*))?)?\s*(?![^\s{]))?</string>
b69ab31554 <key>beginCaptures</key>
b69ab31555 <dict>
b69ab31556 <key>1</key>
b69ab31557 <dict>
b69ab31558 <key>name</key>
b69ab31559 <string>keyword.other.service.thrift</string>
b69ab31560 </dict>
b69ab31561 <key>2</key>
b69ab31562 <dict>
b69ab31563 <key>name</key>
b69ab31564 <string>entity.name.type.service.thrift</string>
b69ab31565 </dict>
b69ab31566 <key>3</key>
b69ab31567 <dict>
b69ab31568 <key>name</key>
b69ab31569 <string>keyword.other.service.extends.thrift</string>
b69ab31570 </dict>
b69ab31571 <key>4</key>
b69ab31572 <dict>
b69ab31573 <key>name</key>
b69ab31574 <string>entity.other.inherited-class.thrift</string>
b69ab31575 </dict>
b69ab31576 </dict>
b69ab31577 <key>end</key>
b69ab31578 <string>(?&lt;=\})|$</string>
b69ab31579 <key>name</key>
b69ab31580 <string>meta.service.thrift</string>
b69ab31581 <key>patterns</key>
b69ab31582 <array>
b69ab31583 <dict>
b69ab31584 <key>begin</key>
b69ab31585 <string>\{</string>
b69ab31586 <key>beginCaptures</key>
b69ab31587 <dict>
b69ab31588 <key>0</key>
b69ab31589 <dict>
b69ab31590 <key>name</key>
b69ab31591 <string>punctuation.section.service.begin.thrift</string>
b69ab31592 </dict>
b69ab31593 </dict>
b69ab31594 <key>end</key>
b69ab31595 <string>\}</string>
b69ab31596 <key>endCaptures</key>
b69ab31597 <dict>
b69ab31598 <key>0</key>
b69ab31599 <dict>
b69ab31600 <key>name</key>
b69ab31601 <string>punctuation.section.service.end.thrift</string>
b69ab31602 </dict>
b69ab31603 </dict>
b69ab31604 <key>patterns</key>
b69ab31605 <array>
b69ab31606 <dict>
b69ab31607 <key>include</key>
b69ab31608 <string>#comments</string>
b69ab31609 </dict>
b69ab31610 <dict>
b69ab31611 <key>begin</key>
b69ab31612 <string>(?x)(?&lt;!\S)
b69ab31613 (oneway(?!\S))?\s*
b69ab31614 (?&lt;ft&gt;
b69ab31615 map\s*&lt;\s*\g&lt;ft&gt;\s*,\s*\g&lt;ft&gt;\s*&gt; |
b69ab31616 set\s*&lt;\s*\g&lt;ft&gt;\s*&gt; |
b69ab31617 list\s*&lt;\s*\g&lt;ft&gt;\s*&gt;\s*(cpp_type(?!\S))? |
b69ab31618 (?!oneway\b)[a-zA-Z_][\w.]*
b69ab31619 )\s*
b69ab31620 (?:
b69ab31621 (?&lt;!\S)([a-zA-Z_][\w.]*)\s*(?![^\s(])
b69ab31622 )?</string>
b69ab31623 <key>beginCaptures</key>
b69ab31624 <dict>
b69ab31625 <key>1</key>
b69ab31626 <dict>
b69ab31627 <key>name</key>
b69ab31628 <string>keyword.other.oneway.thrift</string>
b69ab31629 </dict>
b69ab31630 <key>2</key>
b69ab31631 <dict>
b69ab31632 <key>name</key>
b69ab31633 <string>storage.type.function.thrift</string>
b69ab31634 </dict>
b69ab31635 <key>3</key>
b69ab31636 <dict>
b69ab31637 <key>name</key>
b69ab31638 <string>keyword.other.cpp_type.thrift</string>
b69ab31639 </dict>
b69ab31640 <key>4</key>
b69ab31641 <dict>
b69ab31642 <key>name</key>
b69ab31643 <string>entity.name.function.thrift</string>
b69ab31644 </dict>
b69ab31645 </dict>
b69ab31646 <key>end</key>
b69ab31647 <string>$|^</string>
b69ab31648 <key>name</key>
b69ab31649 <string>meta.service.function.thrift</string>
b69ab31650 <key>patterns</key>
b69ab31651 <array>
b69ab31652 <dict>
b69ab31653 <key>begin</key>
b69ab31654 <string>\(</string>
b69ab31655 <key>beginCaptures</key>
b69ab31656 <dict>
b69ab31657 <key>0</key>
b69ab31658 <dict>
b69ab31659 <key>name</key>
b69ab31660 <string>punctuation.definition.arguments.begin.thrift</string>
b69ab31661 </dict>
b69ab31662 </dict>
b69ab31663 <key>end</key>
b69ab31664 <string>\)</string>
b69ab31665 <key>endCaptures</key>
b69ab31666 <dict>
b69ab31667 <key>0</key>
b69ab31668 <dict>
b69ab31669 <key>name</key>
b69ab31670 <string>punctuation.definition.arguments.end.thrift</string>
b69ab31671 </dict>
b69ab31672 </dict>
b69ab31673 <key>patterns</key>
b69ab31674 <array>
b69ab31675 <dict>
b69ab31676 <key>include</key>
b69ab31677 <string>#comments</string>
b69ab31678 </dict>
b69ab31679 <dict>
b69ab31680 <key>include</key>
b69ab31681 <string>#field</string>
b69ab31682 </dict>
b69ab31683 </array>
b69ab31684 </dict>
b69ab31685 <dict>
b69ab31686 <key>begin</key>
b69ab31687 <string>(?&lt;![^\s)])(throws)(?![^\s(])</string>
b69ab31688 <key>beginCaptures</key>
b69ab31689 <dict>
b69ab31690 <key>1</key>
b69ab31691 <dict>
b69ab31692 <key>name</key>
b69ab31693 <string>keyword.other.service.function.throws.thrift</string>
b69ab31694 </dict>
b69ab31695 </dict>
b69ab31696 <key>end</key>
b69ab31697 <string>$</string>
b69ab31698 <key>patterns</key>
b69ab31699 <array>
b69ab31700 <dict>
b69ab31701 <key>begin</key>
b69ab31702 <string>\(</string>
b69ab31703 <key>beginCaptures</key>
b69ab31704 <dict>
b69ab31705 <key>0</key>
b69ab31706 <dict>
b69ab31707 <key>name</key>
b69ab31708 <string>punctuation.definition.arguments.begin.thrift</string>
b69ab31709 </dict>
b69ab31710 </dict>
b69ab31711 <key>end</key>
b69ab31712 <string>\)</string>
b69ab31713 <key>endCaptures</key>
b69ab31714 <dict>
b69ab31715 <key>0</key>
b69ab31716 <dict>
b69ab31717 <key>name</key>
b69ab31718 <string>punctuation.definition.arguments.end.thrift</string>
b69ab31719 </dict>
b69ab31720 </dict>
b69ab31721 <key>patterns</key>
b69ab31722 <array>
b69ab31723 <dict>
b69ab31724 <key>include</key>
b69ab31725 <string>#comments</string>
b69ab31726 </dict>
b69ab31727 <dict>
b69ab31728 <key>include</key>
b69ab31729 <string>#field</string>
b69ab31730 </dict>
b69ab31731 </array>
b69ab31732 </dict>
b69ab31733 </array>
b69ab31734 </dict>
b69ab31735 <dict>
b69ab31736 <key>include</key>
b69ab31737 <string>#comments</string>
b69ab31738 </dict>
b69ab31739 </array>
b69ab31740 </dict>
b69ab31741 </array>
b69ab31742 </dict>
b69ab31743 </array>
b69ab31744 </dict>
b69ab31745 </array>
b69ab31746 </dict>
b69ab31747 </array>
b69ab31748 <key>repository</key>
b69ab31749 <dict>
b69ab31750 <key>comments</key>
b69ab31751 <dict>
b69ab31752 <key>patterns</key>
b69ab31753 <array>
b69ab31754 <dict>
b69ab31755 <key>begin</key>
b69ab31756 <string>(^[ \t]+)?(?=#)</string>
b69ab31757 <key>beginCaptures</key>
b69ab31758 <dict>
b69ab31759 <key>1</key>
b69ab31760 <dict>
b69ab31761 <key>name</key>
b69ab31762 <string>punctuation.whitespace.comment.leading.thrift</string>
b69ab31763 </dict>
b69ab31764 </dict>
b69ab31765 <key>end</key>
b69ab31766 <string>(?!\G)</string>
b69ab31767 <key>patterns</key>
b69ab31768 <array>
b69ab31769 <dict>
b69ab31770 <key>begin</key>
b69ab31771 <string>#</string>
b69ab31772 <key>beginCaptures</key>
b69ab31773 <dict>
b69ab31774 <key>0</key>
b69ab31775 <dict>
b69ab31776 <key>name</key>
b69ab31777 <string>punctuation.definition.comment.thrift</string>
b69ab31778 </dict>
b69ab31779 </dict>
b69ab31780 <key>end</key>
b69ab31781 <string>\n</string>
b69ab31782 <key>name</key>
b69ab31783 <string>comment.line.number-sign.thrift</string>
b69ab31784 </dict>
b69ab31785 </array>
b69ab31786 </dict>
b69ab31787 <dict>
b69ab31788 <key>begin</key>
b69ab31789 <string>(^[ \t]+)?(?=//)</string>
b69ab31790 <key>beginCaptures</key>
b69ab31791 <dict>
b69ab31792 <key>1</key>
b69ab31793 <dict>
b69ab31794 <key>name</key>
b69ab31795 <string>punctuation.whitespace.comment.leading.thrift</string>
b69ab31796 </dict>
b69ab31797 </dict>
b69ab31798 <key>end</key>
b69ab31799 <string>(?!\G)</string>
b69ab31800 <key>patterns</key>
b69ab31801 <array>
b69ab31802 <dict>
b69ab31803 <key>begin</key>
b69ab31804 <string>//</string>
b69ab31805 <key>beginCaptures</key>
b69ab31806 <dict>
b69ab31807 <key>0</key>
b69ab31808 <dict>
b69ab31809 <key>name</key>
b69ab31810 <string>punctuation.definition.comment.thrift</string>
b69ab31811 </dict>
b69ab31812 </dict>
b69ab31813 <key>end</key>
b69ab31814 <string>\n</string>
b69ab31815 <key>name</key>
b69ab31816 <string>comment.line.double-slash.thrift</string>
b69ab31817 </dict>
b69ab31818 </array>
b69ab31819 </dict>
b69ab31820 <dict>
b69ab31821 <key>begin</key>
b69ab31822 <string>/\*\*</string>
b69ab31823 <key>beginCaptures</key>
b69ab31824 <dict>
b69ab31825 <key>0</key>
b69ab31826 <dict>
b69ab31827 <key>name</key>
b69ab31828 <string>punctuation.definition.comment.begin.thrift</string>
b69ab31829 </dict>
b69ab31830 </dict>
b69ab31831 <key>end</key>
b69ab31832 <string>\*/</string>
b69ab31833 <key>endCaptures</key>
b69ab31834 <dict>
b69ab31835 <key>0</key>
b69ab31836 <dict>
b69ab31837 <key>name</key>
b69ab31838 <string>punctuation.definition.comment.end.thrift</string>
b69ab31839 </dict>
b69ab31840 </dict>
b69ab31841 <key>name</key>
b69ab31842 <string>comment.block.documentation.thrift</string>
b69ab31843 </dict>
b69ab31844 <dict>
b69ab31845 <key>begin</key>
b69ab31846 <string>/\*</string>
b69ab31847 <key>beginCaptures</key>
b69ab31848 <dict>
b69ab31849 <key>0</key>
b69ab31850 <dict>
b69ab31851 <key>name</key>
b69ab31852 <string>punctuation.definition.comment.begin.thrift</string>
b69ab31853 </dict>
b69ab31854 </dict>
b69ab31855 <key>end</key>
b69ab31856 <string>\*/</string>
b69ab31857 <key>endCaptures</key>
b69ab31858 <dict>
b69ab31859 <key>0</key>
b69ab31860 <dict>
b69ab31861 <key>name</key>
b69ab31862 <string>punctuation.definition.comment.end.thrift</string>
b69ab31863 </dict>
b69ab31864 </dict>
b69ab31865 <key>name</key>
b69ab31866 <string>comment.block.thrift</string>
b69ab31867 </dict>
b69ab31868 </array>
b69ab31869 </dict>
b69ab31870 <key>field</key>
b69ab31871 <dict>
b69ab31872 <key>begin</key>
b69ab31873 <string>(?x)
b69ab31874 (?&lt;![^\s{(])(?=\S)
b69ab31875 (\d+\s*:)?[ \t]*
b69ab31876 (?: (required|optional)(?!\S)[ \t]*
b69ab31877 | (?=\S)(?!=required|optional|\d)
b69ab31878 )</string>
b69ab31879 <key>beginCaptures</key>
b69ab31880 <dict>
b69ab31881 <key>1</key>
b69ab31882 <dict>
b69ab31883 <key>name</key>
b69ab31884 <string>entity.other.field-id.thrift</string>
b69ab31885 </dict>
b69ab31886 <key>2</key>
b69ab31887 <dict>
b69ab31888 <key>name</key>
b69ab31889 <string>keyword.other.requiredness.thrift</string>
b69ab31890 </dict>
b69ab31891 </dict>
b69ab31892 <key>end</key>
b69ab31893 <string>[,;]|(?=[)#]|//|/\*)|$</string>
b69ab31894 <key>endCaptures</key>
b69ab31895 <dict>
b69ab31896 <key>0</key>
b69ab31897 <dict>
b69ab31898 <key>name</key>
b69ab31899 <string>punctuation.separator.fields.thrift</string>
b69ab31900 </dict>
b69ab31901 </dict>
b69ab31902 <key>name</key>
b69ab31903 <string>meta.field.thrift</string>
b69ab31904 <key>patterns</key>
b69ab31905 <array>
b69ab31906 <dict>
b69ab31907 <key>begin</key>
b69ab31908 <string>(?x)
b69ab31909 (?&lt;ft&gt;
b69ab31910 map\s*&lt;\s*\g&lt;ft&gt;\s*,\s*\g&lt;ft&gt;\s*&gt; |
b69ab31911 set\s*&lt;\s*\g&lt;ft&gt;\s*&gt; |
b69ab31912 list\s*&lt;\s*\g&lt;ft&gt;\s*&gt;\s*(cpp_type(?!\S))? |
b69ab31913 [a-zA-Z_][\w.]*
b69ab31914 )[ \t]*
b69ab31915 (?:([a-zA-Z_][\w.]*)[ \t]*)? # identifier
b69ab31916 </string>
b69ab31917 <key>beginCaptures</key>
b69ab31918 <dict>
b69ab31919 <key>1</key>
b69ab31920 <dict>
b69ab31921 <key>name</key>
b69ab31922 <string>storage.type.field.thrift</string>
b69ab31923 </dict>
b69ab31924 <key>2</key>
b69ab31925 <dict>
b69ab31926 <key>name</key>
b69ab31927 <string>keyword.other.cpp-type.thrift</string>
b69ab31928 </dict>
b69ab31929 <key>3</key>
b69ab31930 <dict>
b69ab31931 <key>name</key>
b69ab31932 <string>variable.other.field-name.thrift</string>
b69ab31933 </dict>
b69ab31934 </dict>
b69ab31935 <key>end</key>
b69ab31936 <string>(?=[,;]|[)#]|//|/\*)|$</string>
b69ab31937 <key>patterns</key>
b69ab31938 <array>
b69ab31939 <dict>
b69ab31940 <key>begin</key>
b69ab31941 <string>=</string>
b69ab31942 <key>end</key>
b69ab31943 <string>(?=[,;]|[)#]|//|/\*)|$</string>
b69ab31944 <key>patterns</key>
b69ab31945 <array>
b69ab31946 <dict>
b69ab31947 <key>match</key>
b69ab31948 <string>(?&lt;!\S)(xsd_optional)\b</string>
b69ab31949 <key>name</key>
b69ab31950 <string>keyword.other.xsd_optional.thrift</string>
b69ab31951 </dict>
b69ab31952 <dict>
b69ab31953 <key>match</key>
b69ab31954 <string>(?&lt;!\S)(xsd_nillable)\b</string>
b69ab31955 <key>name</key>
b69ab31956 <string>keyword.other.xsd_nillable.thrift</string>
b69ab31957 </dict>
b69ab31958 <dict>
b69ab31959 <key>include</key>
b69ab31960 <string>#value</string>
b69ab31961 </dict>
b69ab31962 </array>
b69ab31963 </dict>
b69ab31964 </array>
b69ab31965 </dict>
b69ab31966 </array>
b69ab31967 </dict>
b69ab31968 <key>value</key>
b69ab31969 <dict>
b69ab31970 <key>patterns</key>
b69ab31971 <array>
b69ab31972 <dict>
b69ab31973 <key>match</key>
b69ab31974 <string>[+-]?\d*\.\d+([eE][+-]?\d+)?</string>
b69ab31975 <key>name</key>
b69ab31976 <string>constant.numeric.float.thrift</string>
b69ab31977 </dict>
b69ab31978 <dict>
b69ab31979 <key>match</key>
b69ab31980 <string>[+-]?\d+</string>
b69ab31981 <key>name</key>
b69ab31982 <string>constant.numeric.integer.thrift</string>
b69ab31983 </dict>
b69ab31984 <dict>
b69ab31985 <key>match</key>
b69ab31986 <string>[a-zA-Z_][\w.]*</string>
b69ab31987 <key>name</key>
b69ab31988 <string>constant.other.const-data.thrift</string>
b69ab31989 </dict>
b69ab31990 <dict>
b69ab31991 <key>begin</key>
b69ab31992 <string>'</string>
b69ab31993 <key>beginCaptures</key>
b69ab31994 <dict>
b69ab31995 <key>0</key>
b69ab31996 <dict>
b69ab31997 <key>name</key>
b69ab31998 <string>punctuation.definition.string.begin.thrift</string>
b69ab31999 </dict>
b69ab311000 </dict>
b69ab311001 <key>end</key>
b69ab311002 <string>'</string>
b69ab311003 <key>endCaptures</key>
b69ab311004 <dict>
b69ab311005 <key>0</key>
b69ab311006 <dict>
b69ab311007 <key>name</key>
b69ab311008 <string>punctuation.definition.string.end.thrift</string>
b69ab311009 </dict>
b69ab311010 </dict>
b69ab311011 <key>name</key>
b69ab311012 <string>string.quoted.single.thrift</string>
b69ab311013 </dict>
b69ab311014 <dict>
b69ab311015 <key>begin</key>
b69ab311016 <string>"</string>
b69ab311017 <key>beginCaptures</key>
b69ab311018 <dict>
b69ab311019 <key>0</key>
b69ab311020 <dict>
b69ab311021 <key>name</key>
b69ab311022 <string>punctuation.definition.string.begin.thrift</string>
b69ab311023 </dict>
b69ab311024 </dict>
b69ab311025 <key>end</key>
b69ab311026 <string>"</string>
b69ab311027 <key>endCaptures</key>
b69ab311028 <dict>
b69ab311029 <key>0</key>
b69ab311030 <dict>
b69ab311031 <key>name</key>
b69ab311032 <string>punctuation.definition.string.begin.thrift</string>
b69ab311033 </dict>
b69ab311034 </dict>
b69ab311035 <key>name</key>
b69ab311036 <string>string.quoted.double.thrift</string>
b69ab311037 </dict>
b69ab311038 <dict>
b69ab311039 <key>begin</key>
b69ab311040 <string>\[</string>
b69ab311041 <key>beginCaptures</key>
b69ab311042 <dict>
b69ab311043 <key>0</key>
b69ab311044 <dict>
b69ab311045 <key>name</key>
b69ab311046 <string>punctuation.definition.array.begin.thrift</string>
b69ab311047 </dict>
b69ab311048 </dict>
b69ab311049 <key>end</key>
b69ab311050 <string>\]</string>
b69ab311051 <key>endCaptures</key>
b69ab311052 <dict>
b69ab311053 <key>0</key>
b69ab311054 <dict>
b69ab311055 <key>name</key>
b69ab311056 <string>punctuation.definition.array.end.thrift</string>
b69ab311057 </dict>
b69ab311058 </dict>
b69ab311059 <key>name</key>
b69ab311060 <string>meta.array.thrift</string>
b69ab311061 <key>patterns</key>
b69ab311062 <array>
b69ab311063 <dict>
b69ab311064 <key>match</key>
b69ab311065 <string>[,;]</string>
b69ab311066 </dict>
b69ab311067 <dict>
b69ab311068 <key>include</key>
b69ab311069 <string>#value</string>
b69ab311070 </dict>
b69ab311071 </array>
b69ab311072 </dict>
b69ab311073 <dict>
b69ab311074 <key>begin</key>
b69ab311075 <string>\{</string>
b69ab311076 <key>beginCaptures</key>
b69ab311077 <dict>
b69ab311078 <key>0</key>
b69ab311079 <dict>
b69ab311080 <key>name</key>
b69ab311081 <string>punctuation.definition.map.begin.thrift</string>
b69ab311082 </dict>
b69ab311083 </dict>
b69ab311084 <key>end</key>
b69ab311085 <string>\}</string>
b69ab311086 <key>endCaptures</key>
b69ab311087 <dict>
b69ab311088 <key>0</key>
b69ab311089 <dict>
b69ab311090 <key>name</key>
b69ab311091 <string>punctuation.definition.map.end.thrift</string>
b69ab311092 </dict>
b69ab311093 </dict>
b69ab311094 <key>name</key>
b69ab311095 <string>meta.map.thrift</string>
b69ab311096 <key>patterns</key>
b69ab311097 <array>
b69ab311098 <dict>
b69ab311099 <key>match</key>
b69ab311100 <string>[:,;]</string>
b69ab311101 </dict>
b69ab311102 <dict>
b69ab311103 <key>include</key>
b69ab311104 <string>#value</string>
b69ab311105 </dict>
b69ab311106 </array>
b69ab311107 </dict>
b69ab311108 <dict>
b69ab311109 <key>match</key>
b69ab311110 <string>\S</string>
b69ab311111 <key>name</key>
b69ab311112 <string>invalid.illegal.thrift</string>
b69ab311113 </dict>
b69ab311114 </array>
b69ab311115 </dict>
b69ab311116 </dict>
b69ab311117 <key>scopeName</key>
b69ab311118 <string>source.thrift</string>
b69ab311119 <key>uuid</key>
b69ab311120 <string>9E5704AC-54ED-4D7C-946C-6DC3727BDC4C</string>
b69ab311121</dict>
b69ab311122</plist>