github-linguist 9.0.0 → 9.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. checksums.yaml +4 -4
  2. data/bin/github-linguist +3 -3
  3. data/grammars/etc.json +1 -1
  4. data/grammars/inline.edgeql.json +1 -1
  5. data/grammars/liquid.injection.json +1 -1
  6. data/grammars/source.4dm.json +1 -1
  7. data/grammars/source.QB64.json +1 -1
  8. data/grammars/source.abap.json +1 -1
  9. data/grammars/source.abl.json +1 -1
  10. data/grammars/source.aiken.json +1 -0
  11. data/grammars/source.answersetprogramming.json +1 -0
  12. data/grammars/source.apacheconf.json +1 -0
  13. data/grammars/source.apex.json +1 -1
  14. data/grammars/source.assembly.json +1 -1
  15. data/grammars/source.ats.json +1 -1
  16. data/grammars/source.ballerina.json +1 -1
  17. data/grammars/source.brs.json +1 -1
  18. data/grammars/source.bst.json +1 -0
  19. data/grammars/source.c++.json +1 -1
  20. data/grammars/source.c.calendar.json +1 -0
  21. data/grammars/source.c.json +1 -1
  22. data/grammars/source.c.linker.json +1 -0
  23. data/grammars/source.cairo0.json +1 -1
  24. data/grammars/source.cl.json +1 -1
  25. data/grammars/source.clue.json +1 -0
  26. data/grammars/source.cmake.json +1 -1
  27. data/grammars/source.cmakecache.json +1 -1
  28. data/grammars/source.cobol.json +1 -1
  29. data/grammars/source.cs.json +1 -1
  30. data/grammars/source.curlrc.json +1 -1
  31. data/grammars/source.curry.json +1 -1
  32. data/grammars/source.daslang.json +1 -0
  33. data/grammars/source.dds.dspf.json +1 -1
  34. data/grammars/source.erlang.json +1 -1
  35. data/grammars/source.gdscript.json +1 -1
  36. data/grammars/source.git-revlist.json +1 -1
  37. data/grammars/source.gleam.json +1 -1
  38. data/grammars/source.hack.json +1 -1
  39. data/grammars/source.hcl.json +1 -1
  40. data/grammars/source.hx.json +1 -1
  41. data/grammars/source.ice.json +1 -1
  42. data/grammars/source.ilecobol.json +1 -0
  43. data/grammars/source.ispc.json +1 -0
  44. data/grammars/source.jai.json +1 -0
  45. data/grammars/source.json.comments.json +1 -0
  46. data/grammars/source.julia.console.json +1 -1
  47. data/grammars/source.julia.json +1 -1
  48. data/grammars/source.just.json +1 -1
  49. data/grammars/source.kdl.json +1 -0
  50. data/grammars/source.koka.json +1 -0
  51. data/grammars/source.lean.markdown.json +1 -1
  52. data/grammars/source.lean4.markdown.json +1 -1
  53. data/grammars/source.leo.json +1 -0
  54. data/grammars/source.livescript.json +1 -1
  55. data/grammars/source.m2.json +1 -1
  56. data/grammars/source.m3u.json +1 -0
  57. data/grammars/source.matlab.json +1 -1
  58. data/grammars/source.mo.json +1 -1
  59. data/grammars/source.moonbit.json +1 -1
  60. data/grammars/source.mzn.json +1 -0
  61. data/grammars/source.nasl.json +1 -1
  62. data/grammars/source.nim.json +1 -1
  63. data/grammars/source.nr.json +1 -1
  64. data/grammars/source.nushell.json +1 -1
  65. data/grammars/source.objc.json +1 -1
  66. data/grammars/source.odin.json +1 -1
  67. data/grammars/source.openesql.json +1 -1
  68. data/grammars/source.openqasm.json +1 -0
  69. data/grammars/source.overpassql.json +1 -0
  70. data/grammars/source.polar.json +1 -1
  71. data/grammars/source.prisma.json +1 -1
  72. data/grammars/source.purescript.json +1 -1
  73. data/grammars/source.ql.json +1 -1
  74. data/grammars/source.qsharp.json +1 -1
  75. data/grammars/source.rescript.json +1 -1
  76. data/grammars/source.roc.json +1 -1
  77. data/grammars/source.rpgle.json +1 -1
  78. data/grammars/source.rust.json +1 -1
  79. data/grammars/source.sail.json +1 -0
  80. data/grammars/source.scala.json +1 -1
  81. data/grammars/source.scm.json +1 -0
  82. data/grammars/source.slang.json +1 -0
  83. data/grammars/source.slice.json +1 -1
  84. data/grammars/source.slint.json +1 -1
  85. data/grammars/source.smithy.json +1 -1
  86. data/grammars/source.soql.json +1 -1
  87. data/grammars/source.sourcepawn.json +1 -1
  88. data/grammars/source.stan.json +1 -1
  89. data/grammars/source.sway.json +1 -1
  90. data/grammars/source.swift.json +1 -1
  91. data/grammars/source.tact.json +1 -1
  92. data/grammars/source.talon.json +1 -1
  93. data/grammars/source.templ.json +1 -1
  94. data/grammars/source.textgrid.json +1 -1
  95. data/grammars/source.toc.json +1 -1
  96. data/grammars/source.torrc.json +1 -0
  97. data/grammars/source.ts.prismaClientRawSQL.json +1 -1
  98. data/grammars/source.tsp.json +1 -1
  99. data/grammars/source.typst.json +1 -1
  100. data/grammars/source.uplc.json +1 -0
  101. data/grammars/source.vba.json +1 -1
  102. data/grammars/source.vento.json +1 -0
  103. data/grammars/source.vue.json +1 -1
  104. data/grammars/source.wdl.json +1 -1
  105. data/grammars/source.wit.json +1 -1
  106. data/grammars/source.xmake.json +1 -0
  107. data/grammars/source.zmodel.json +1 -0
  108. data/grammars/text.adblock.json +1 -1
  109. data/grammars/text.html.liquid.json +1 -1
  110. data/grammars/text.html.markdown.d2.json +1 -1
  111. data/grammars/text.html.vento.json +1 -0
  112. data/grammars/text.rtf.json +1 -1
  113. data/grammars/text.valve-cfg.json +1 -1
  114. data/grammars/version +1 -1
  115. data/lib/linguist/VERSION +1 -1
  116. data/lib/linguist/generated.rb +24 -2
  117. data/lib/linguist/heuristics.yml +65 -18
  118. data/lib/linguist/languages.json +1 -1
  119. data/lib/linguist/languages.yml +298 -33
  120. data/lib/linguist/samples.json +1 -1
  121. data/lib/linguist/shebang.rb +1 -1
  122. metadata +34 -14
  123. data/grammars/source.apache-config.json +0 -1
  124. data/grammars/source.apache-config.mod_perl.json +0 -1
  125. data/grammars/source.c.platform.json +0 -1
  126. data/grammars/text.html.erlang.yaws.json +0 -1
@@ -1 +1 @@
1
- {"name":"OpenESQL","scopeName":"source.openesql","patterns":[{"name":"text.variable","match":"((?\u003c!@)@)\\b(\\w+)\\b"},{"name":"text.bracketed","match":"(\\[)[^\\]]*(\\])"},{"name":"keyword.other.openesql","match":"\\b(?i)(abort|abort_after_wait|absent|absolute|accent_sensitivity|acceptable_cursopt|acp|action|activation|address|admin|aes_128|aes_192|aes_256|affinity|after|aggregate|algorithm|all_constraints|all_errormsgs|all_indexes|all_levels|all_results|allow_connections|allow_dup_row|allow_encrypted_value_modifications|allow_page_locks|allow_row_locks|allow_snapshot_isolation|alter|altercolumn|always|anonymous|ansi_defaults|ansi_null_default|ansi_null_dflt_off|ansi_null_dflt_on|ansi_nulls|ansi_padding|ansi_warnings|appdomain|append|application|apply|arithabort|arithignore|assembly|asymmetric|asynchronous_commit|at|atan2|atomic|attach|attach_force_rebuild_log|attach_rebuild_log|audit|auth_realm|authentication|auto|auto_cleanup|auto_close|auto_create_statistics|auto_shrink|auto_update_statistics|auto_update_statistics_async|automated_backup_preference|automatic|autopilot|availability|availability_mode|backup_priority|base64|basic|batches|batchsize|before|between|bigint|binary|binding|bit|block|blocksize|bmk|break|broker|broker_instance|bucket_count|buffer|buffercount|bulk_logged|by|call|caller|card|case|cast|catalog|catch|cert|certificate|change_retention|change_tracking|change_tracking_context|changes|char|character|character_set|check_expiration|check_policy|checkconstraints|checkindex|checkpoint|cleanup_policy|clear|clear_port|close|codepage|collection|column_encryption_key|column_master_key|columnstore|columnstore_archive|colv_80_to_100|colv_100_to_80|commit_differential_base|committed|compatibility_level|compress_all_row_groups|compression|compression_delay|concat_null_yields_null|concatenate|configuration|connect|continue|continue_after_error|contract|contract_name|control|conversation|conversation_group_id|conversation_handle|copy|copy_only|count_rows|counter|create(\\s+or\\s+alter)?|credential|cross|cryptographic|cryptographic_provider|cube|cursor_close_on_commit|cursor_default|data|data_compression|data_flush_interval_seconds|data_mirroring|data_purity|data_source|database|database_name|database_snapshot|datafiletype|date_correlation_optimization|date|datefirst|dateformat|date_format|datetime|datetime2|datetimeoffset|days|db_chaining|dbid|dbidexec|dbo_only|deadlock_priority|deallocate|dec|decimal|declare(\\s+cursor)?|decrypt|decrypt_a|decryption|default_database|default_language|default_logon_domain|default_schema|definition|delay|delayed_durability|delimitedtext|density_vector|dependent|des|description|desired_state|desx|differential|digest|disable|disable_broker|disable_def_cnst_chk|disabled|disk|distinct|distributed|distribution|drop|drop_existing|dts_buffers|dump|durability|dynamic|edition|elements|else|emergency|empty|enable|enable_broker|enabled|encoding|encrypted|encrypted_value|encryption|encryption_type|end|endpoint|endpoint_url|enhancedintegrity|entry|error_broker_conversations|errorfile|estimateonly|event|except|exec|executable|execute|exists|expand|expiredate|expiry_date|explicit|external|external_access|failover|failover_mode|failure_condition_level|fast|fast_forward|fastfirstrow|federated_service_account|fetch|field_terminator|fieldterminator|file|filelistonly|filegroup|filename|filestream|filestream_log|filestream_on|filetable|file_format|filter|first_row|fips_flagger|fire_triggers|first|firstrow|float|flush_interval_seconds|fmtonly|following|force|force_failover_allow_data_loss|force_service_allow_data_loss|forced|forceplan|formatfile|format_options|format_type|formsof|forward_only|free_cursors|free_exec_context|fullscan|fulltext|fulltextall|fulltextkey|function|generated|get|geography|geometry|global|go|goto|governor|guid|hadoop|hardening|hash|hashed|header_limit|headeronly|health_check_timeout|hidden|hierarchyid|histogram|histogram_steps|hits_cursors|hits_exec_context|hours|http|identity|identity_value|if|ifnull|ignore_constraints|ignore_dup_key|ignore_dup_row|ignore_triggers|image|immediate|implicit_transactions|include|include_null_values|inflectional|init|initiator|insensitive|insert|instead|int|integer|integrated|intersect|intermediate|interval_length_minutes|into|inuse_cursors|inuse_exec_context|io|is|isabout|iso_week|isolation|job_tracker_location|json|keep|keep_nulls|keep_replication|keepdefaults|keepfixed|keepidentity|keepnulls|kerberos|key|key_path|key_source|key_store_provider_name|keyset|kill|kilobytes_per_batch|labelonly|langid|language|last|lastrow|legacy_cardinality_estimation|length|level|lifetime|lineage_80_to_100|lineage_100_to_80|listener_ip|listener_port|load|loadhistory|lob_compaction|local|local_service_name|locate|location|lock_escalation|lock_timeout|lockres|login|login_type|loop|manual|mark_in_use_for_removal|masked|master|max_queue_readers|max_duration|max_outstanding_io_per_volume|maxdop|maxerrors|maxlength|maxtransfersize|max_plans_per_query|max_storage_size_mb|mediadescription|medianame|mediapassword|memogroup|memory_optimized|merge|message|message_forward_size|message_forwarding|microsecond|millisecond|minutes|mirror_address|misses_cursors|misses_exec_context|mixed|modify|money|move|multi_user|must_change|name|namespace|nanosecond|native|native_compilation|nchar|ncharacter|never|new_account|new_broker|newname|next|no|no_browsetable|no_checksum|no_compression|no_infomsgs|no_triggers|no_truncate|nocount|noexec|noexpand|noformat|noinit|nolock|nonatomic|nondurable|none|norecompute|norecovery|noreset|norewind|noskip|not|notification|nounload|now|nowait|ntext|ntlm|numeric|numeric_roundabort|nvarchar|object|objid|oem|offline|old_account|online|operation_mode|open|openjson|optimistic|option|orc|out|outer|output|over|override|owner|ownership|pad_index|page|page_checksum|page_verify|pagecount|paglock|param|parameter_sniffing|parameter_type_expansion|parameterization|parquet|parseonly|partial|partition|partner|password|path|pause|percentage|permission_set|persisted|period|physical_only|plan_forcing_mode|policy|pool|population|ports|preceding|precision|predicate|presume_abort|primary|primary_role|print|prior|priority |priority_level|private|proc(edure)?|procedure_name|profile|provider|query_capture_mode|query_governor_cost_limit|query_optimizer_hotfixes|query_store|queue|quoted_identifier|raiserror|range|raw|rcfile|rc2|rc4|rc4_128|rdbms|read_committed_snapshot|read|read_only|read_write|readcommitted|readcommittedlock|readonly|readpast|readuncommitted|readwrite|real|rebuild|receive|recmodel_70backcomp|recompile|reconfigure|recovery|recursive|recursive_triggers|redo_queue|reject_sample_value|reject_type|reject_value|relative|remote|remote_data_archive|remote_proc_transactions|remote_service_name|remove|removed_cursors|removed_exec_context|reorganize|repeat|repeatable|repeatableread|replica|replicated|replnick_100_to_80|replnickarray_80_to_100|replnickarray_100_to_80|required|required_cursopt|resample|reset|resource|resource_manager_location|restart|restore|restricted_user|resume|retaindays|retention|return|revert|rewind|rewindonly|returns|robust|role|rollup|root|round_robin|route|row|rowdump|rowguidcol|rowlock|row_terminator|rows|rows_per_batch|rowsets_only|rowterminator|rowversion|rsa_1024|rsa_2048|rsa_3072|rsa_4096|rsa_512|safe|safety|sample|save|schema|schemabinding|scoped|scroll|scroll_locks|sddl|secexpr|secondary|secondary_only|secondary_role|secret|security|securityaudit|selective|self|send|sent|sequence|serde_method|serializable|server|service|service_broker|service_name|service_objective|session_timeout|session|sessions|seterror|setopts|sets|shard_map_manager|shard_map_name|sharded|shared_memory|show_statistics|showplan_all|showplan_text|showplan_xml|showplan_xml_with_recompile|shrinkdb|shutdown|sid|signature|simple|single_blob|single_clob|single_nclob|single_user|singleton|site|size_based_cleanup_mode|skip|smalldatetime|smallint|smallmoney|snapshot|snapshot_import|snapshotrestorephase|soap|softnuma|sort_in_tempdb|sorted_data|sorted_data_reorg|spatial|sql|sql_bigint|sql_binary|sql_bit|sql_char|sql_date|sql_decimal|sql_double|sql_float|sql_guid|sql_handle|sql_longvarbinary|sql_longvarchar|sql_numeric|sql_real|sql_smallint|sql_time|sql_timestamp|sql_tinyint|sql_tsi_day|sql_tsi_frac_second|sql_tsi_hour|sql_tsi_minute|sql_tsi_month|sql_tsi_quarter|sql_tsi_second|sql_tsi_week|sql_tsi_year|sql_type_date|sql_type_time|sql_type_timestamp|sql_varbinary|sql_varchar|sql_variant|sql_wchar|sql_wlongvarchar|ssl|ssl_port|standard|standby|start|start_date|started|stat_header|state|statement|static|statistics|statistics_incremental|statistics_norecompute|statistics_only|statman|stats_stream|status|stop|stop_on_error|stopat|stopatmark|stopbeforemark|stoplist|stopped|string_delimiter|subject|supplemental_logging|supported|suspend|symmetric|synchronous_commit|synonym|sysname|system|system_time|system_versioning|table|tableresults|tablock|tablockx|take|tape|target|target_index|target_partition|tcp|temporal_history_retention|text|textimage_on|then|thesaurus|throw|time|timeout|timestamp|tinyint|to|top|torn_page_detection|track_columns_updated|tran|transaction|transfer|triple_des|triple_des_3key|truncate|trustworthy|try|tsql|type|type_desc|type_warning|tzoffset|uid|unbounded|uncommitted|uniqueidentifier|unlimited|unload|unlock|unsafe|updlock|url|use|useplan|useroptions|use_type_default|using|utcdatetime|valid_xml|validation|value|values|varbinary|varchar|verbose|verifyonly|version|view_metadata|virtual_device|visiblity|waitfor|webmethod|weekday|weight|well_formed_xml|when|while|widechar|widechar_ansi|widenative|windows|with|within|witness|without|without_array_wrapper|workload|wsdl|xact_abort|xlock|xml|xmlschema|xquery|xsinil|zone)(?![0-9A-Za-z_-])\\b"},{"include":"#comments"},{"name":"meta.create.openesql","match":"(?i:^\\s*(create(?:\\s+or\\s+replace)?)\\s+(aggregate|conversion|database|domain|function|group|(unique\\s+)?index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\s+)(['\"`]?)(\\w+)\\4","captures":{"1":{"name":"keyword.other.create.openesql"},"2":{"name":"keyword.other.openesql"},"5":{"name":"entity.name.function.openesql"}}},{"name":"meta.drop.openesql","match":"(?i:^\\s*(drop)\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view))","captures":{"1":{"name":"keyword.other.create.openesql"},"2":{"name":"keyword.other.openesql"}}},{"name":"meta.drop.openesql","match":"(?i:\\s*(drop)\\s+(table)\\s+(\\w+)(\\s+cascade)?\\b)","captures":{"1":{"name":"keyword.other.create.openesql"},"2":{"name":"keyword.other.table.openesql"},"3":{"name":"entity.name.function.openesql"},"4":{"name":"keyword.other.cascade.openesql"}}},{"name":"meta.alter.openesql","match":"(?i:^\\s*(alter)\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|proc(edure)?|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\s+)","captures":{"1":{"name":"keyword.other.create.openesql"},"2":{"name":"keyword.other.table.openesql"}}},{"match":"(?xi)\n\n\t\t\t\t# normal stuff, capture 1\n\t\t\t\t \\b(bigint|bigserial|bit|boolean|box|bytea|cidr|circle|date|double\\sprecision|inet|int|integer|line|lseg|macaddr|money|oid|path|point|polygon|real|serial|smallint|sysdate|text)\\b\n\n\t\t\t\t# numeric suffix, capture 2 + 3i\n\t\t\t\t|\\b(bit\\svarying|character\\s(?:varying)?|tinyint|var\\schar|float|interval)\\((\\d+)\\)\n\n\t\t\t\t# optional numeric suffix, capture 4 + 5i\n\t\t\t\t|\\b(char|number|varchar\\d?)\\b(?:\\((\\d+)\\))?\n\n\t\t\t\t# special case, capture 6 + 7i + 8i\n\t\t\t\t|\\b(numeric|decimal)\\b(?:\\((\\d+),(\\d+)\\))?\n\n\t\t\t\t# special case, captures 9, 10i, 11\n\t\t\t\t|\\b(times?)\\b(?:\\((\\d+)\\))?(\\swith(?:out)?\\stime\\szone\\b)?\n\n\t\t\t\t# special case, captures 12, 13, 14i, 15\n\t\t\t\t|\\b(timestamp)(?:(s|tz))?\\b(?:\\((\\d+)\\))?(\\s(with|without)\\stime\\szone\\b)?\n\n\t\t\t","captures":{"1":{"name":"storage.type.openesql"},"10":{"name":"constant.numeric.openesql"},"11":{"name":"storage.type.openesql"},"12":{"name":"storage.type.openesql"},"13":{"name":"storage.type.openesql"},"14":{"name":"constant.numeric.openesql"},"15":{"name":"storage.type.openesql"},"2":{"name":"storage.type.openesql"},"3":{"name":"constant.numeric.openesql"},"4":{"name":"storage.type.openesql"},"5":{"name":"constant.numeric.openesql"},"6":{"name":"storage.type.openesql"},"7":{"name":"constant.numeric.openesql"},"8":{"name":"constant.numeric.openesql"},"9":{"name":"storage.type.openesql"}}},{"name":"storage.modifier.openesql","match":"(?i:\\b((?:primary|foreign)\\s+key|references|on\\sdelete(\\s+cascade)?|check|constraint)\\b)"},{"name":"constant.numeric.openesql","match":"\\b\\d+\\b"},{"name":"keyword.other.DML.openesql","match":"(?i:\\b(select(\\s+distinct)?|insert\\s+(ignore\\s+)?into|update|delete|from|set|where|group\\sby|or|like|and|union(\\s+all)?|having|order\\sby|limit|(inner|cross)\\s+join|join|straight_join|full\\s+outer\\s+join|(left|right)(\\s+outer)?\\s+join|natural(\\s+(left|right)(\\s+outer)?)?\\s+join)\\b)"},{"name":"keyword.other.DDL.create.II.openesql","match":"(?i:\\b(on|off|((is\\s+)?not\\s+)?null)\\b)"},{"name":"keyword.other.DML.II.openesql","match":"(?i:\\bvalues\\b)"},{"name":"keyword.other.extra.openesql","match":"(?i:\\b(whenever|of|for|cursor|found|insensitive|sensitive)\\b)"},{"name":"keyword.other.LUW.openesql","match":"(?i:\\b(begin(\\s+work)?|start\\s+transaction|commit(\\s+work)?|rollback(\\s+work)?)\\b)"},{"name":"keyword.other.authorization.openesql","match":"(?i:\\b(grant(\\swith\\sgrant\\soption)?|revoke)\\b)"},{"name":"keyword.other.data-integrity.openesql","match":"(?i:\\bin\\b)"},{"name":"keyword.other.object-comments.openesql","match":"(?i:^\\s*(comment\\s+on\\s+(table|column|aggregate|constraint|database|domain|function|index|operator|rule|schema|sequence|trigger|type|view))\\s+.*?\\s+(is)\\s+)"},{"name":"keyword.other.alias.openesql","match":"(?i)\\bAS\\b"},{"name":"keyword.other.order.openesql","match":"(?i)\\b(DESC|ASC)\\b"},{"name":"keyword.operator.star.openesql","match":"\\*"},{"name":"keyword.operator.comparison.openesql","match":"[!\u003c\u003e]?=|\u003c\u003e|\u003c|\u003e"},{"name":"keyword.operator.math.openesql","match":"-|\\+|/"},{"name":"keyword.operator.concatenator.openesql","match":"\\|\\|"},{"name":"support.function.aggregate.openesql","match":"(?i)\\b(avg|checksum_agg|count|count_big|grouping|grouping_id|max|min|sum|stdev|stdevp|var|varp)\\b"},{"name":"support.function.conversion.openesql","match":"(?i)\\b(cast|convert|parse|try_cast|try_convert|try_parse)\\b"},{"name":"support.function.cursor.openesql","match":"(?i)\\b(cursor_status)\\b"},{"name":"support.function.datetime.openesql","match":"(?i)\\b(sysdatetime|sysdatetimeoffset|sysutcdatetime|current_time(stamp)?|getdate|getutcdate|datename|datepart|day|month|year|datefromparts|datetime2fromparts|datetimefromparts|datetimeoffsetfromparts|smalldatetimefromparts|timefromparts|datediff|dateadd|eomonth|switchoffset|todatetimeoffset|isdate)\\b"},{"name":"support.function.expression.openesql","match":"(?i)\\b(coalesce|nullif)\\b"},{"name":"support.function.globalvar.openesql","match":"(?\u003c!@)@@(?i)\\b(cursor_rows|connections|cpu_busy|datefirst|dbts|error|fetch_status|identity|idle|io_busy|langid|language|lock_timeout|max_connections|max_precision|nestlevel|options|packet_errors|pack_received|pack_sent|procid|remserver|rowcount|servername|servicename|spid|textsize|timeticks|total_errors|total_read|total_write|trancount|version)\\b"},{"name":"support.function.logical.openesql","match":"(?i)\\b(choose|iif)\\b"},{"name":"support.function.mathematical.openesql","match":"(?i)\\b(abs|acos|asin|atan|atn2|ceiling|cos|cot|degrees|exp|floor|log|log10|pi|power|radians|rand|round|sign|sin|sqrt|square|tan)\\b"},{"name":"support.function.metadata.openesql","match":"(?i)\\b(app_name|applock_mode|applock_test|assemblyproperty|col_length|col_name|columnproperty|database_principal_id|databasepropertyex|db_id|db_name|file_id|file_idex|file_name|filegroup_id|filegroup_name|filegroupproperty|fileproperty|fulltextcatalogproperty|fulltextserviceproperty|index_col|indexkey_property|indexproperty|object_definition|object_id|object_name|object_schema_name|objectproperty|objectpropertyex|original_db_name|parsename|schema_id|schema_name|scope_identity|serverproperty|stats_date|type_id|type_name|typeproperty)\\b"},{"name":"support.function.ranking.openesql","match":"(?i)\\b(rank|dense_rank|ntile|row_number)\\b"},{"name":"support.function.rowset.openesql","match":"(?i)\\b(opendatasource|openrowset|openquery|openxml)\\b"},{"name":"support.function.security.openesql","match":"(?i)\\b(certencoded|certprivatekey|current_user|database_principal_id|has_perms_by_name|is_member|is_rolemember|is_srvrolemember|original_login|permissions|pwdcompare|pwdencrypt|schema_id|schema_name|session_user|suser_id|suser_sid|suser_sname|system_user|suser_name|user_id|user_name)\\b"},{"name":"support.function.string.openesql","match":"(?i)\\b(ascii|char|charindex|concat|difference|format|left|len|lower|ltrim|nchar|patindex|quotename|replace|replicate|reverse|rtrim|soundex|space|str|string_agg|string_escape|string_split|stuff|substring|translate|trim|unicode|upper)\\b"},{"name":"support.function.system.openesql","match":"(?i)\\b(binary_checksum|checksum|compress|connectionproperty|context_info|current_request_id|current_transaction_id|decompress|error_line|error_message|error_number|error_procedure|error_severity|error_state|formatmessage|get_filestream_transaction_context|getansinull|host_id|host_name|isnull|isnumeric|min_active_rowversion|newid|newsequentialid|rowcount_big|session_context|session_id|xact_state)\\b"},{"name":"support.function.textimage.openesql","match":"(?i)\\b(patindex|textptr|textvalid)\\b"},{"match":"(\\w+?)\\.(\\w+)","captures":{"1":{"name":"constant.other.database-name.openesql"},"2":{"name":"constant.other.table-name.openesql"}}},{"include":"#strings"},{"include":"#regexps"},{"name":"meta.block.openesql","match":"(\\()(\\))","captures":{"1":{"name":"punctuation.section.scope.begin.openesql"},"2":{"name":"punctuation.section.scope.end.openesql"}}}],"repository":{"comments":{"patterns":[{"begin":"(^[ \\t]+)?(?=--)","end":"(?!\\G)","patterns":[{"name":"comment.line.double-dash.openesql","begin":"--","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.openesql"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.openesql"}}},{"begin":"(^[ \\t]+)?(?=#)","end":"(?!\\G)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.openesql"}}},{"name":"comment.block.c","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"punctuation.definition.comment.openesql"}}}]},"regexps":{"patterns":[{"name":"string.regexp.openesql","begin":"/(?=\\S.*/)","end":"/","patterns":[{"include":"#string_interpolation"},{"name":"constant.character.escape.slash.openesql","match":"\\\\/"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.regexp.modr.openesql","begin":"%r\\{","end":"\\}","patterns":[{"include":"#string_interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}}]},"string_escape":{"name":"constant.character.escape.openesql","match":"\\\\."},"string_interpolation":{"name":"string.interpolated.openesql","match":"(#\\{)([^\\}]*)(\\})","captures":{"1":{"name":"punctuation.definition.string.begin.openesql"},"3":{"name":"punctuation.definition.string.end.openesql"}}},"strings":{"patterns":[{"name":"string.quoted.single.openesql","match":"(N)?(')[^']*(')","captures":{"1":{"name":"punctuation.definition.string.begin.openesql"},"2":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.quoted.single.openesql","begin":"'","end":"'","patterns":[{"include":"#string_escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.quoted.other.backtick.openesql","match":"(`)[^`\\\\]*(`)","captures":{"1":{"name":"punctuation.definition.string.begin.openesql"},"2":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.quoted.other.backtick.openesql","begin":"`","end":"`","patterns":[{"include":"#string_escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.quoted.double.openesql","match":"(\")[^\"#]*(\")","captures":{"1":{"name":"punctuation.definition.string.begin.openesql"},"2":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.quoted.double.openesql","begin":"\"","end":"\"","patterns":[{"include":"#string_interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.other.quoted.brackets.openesql","begin":"%\\{","end":"\\}","patterns":[{"include":"#string_interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}}]}}}
1
+ {"name":"OpenESQL","scopeName":"source.openesql","patterns":[{"name":"text.variable","match":"((?\u003c!@)@)\\b(\\w+)\\b"},{"name":"text.bracketed","match":"(\\[)[^\\]]*(\\])"},{"name":"keyword.other.openesql","match":"(?\u003c![\\-\\w])(?i)(abort|abort_after_wait|absent|absolute|accent_sensitivity|acceptable_cursopt|acp|action|activation|address|admin|aes_128|aes_192|aes_256|affinity|after|aggregate|algorithm|all_constraints|all_errormsgs|all_indexes|all_levels|all_results|allow_connections|allow_dup_row|allow_encrypted_value_modifications|allow_page_locks|allow_row_locks|allow_snapshot_isolation|alter|altercolumn|always|anonymous|ansi_defaults|ansi_null_default|ansi_null_dflt_off|ansi_null_dflt_on|ansi_nulls|ansi_padding|ansi_warnings|appdomain|append|application|apply|arithabort|arithignore|assembly|asymmetric|asynchronous_commit|at|atan2|atomic|attach|attach_force_rebuild_log|attach_rebuild_log|audit|auth_realm|authentication|auto|auto_cleanup|auto_close|auto_create_statistics|auto_shrink|auto_update_statistics|auto_update_statistics_async|automated_backup_preference|automatic|autopilot|availability|availability_mode|backup_priority|base64|basic|batches|batchsize|before|between|bigint|binary|binding|bit|block|blocksize|bmk|break|broker|broker_instance|bucket_count|buffer|buffercount|bulk_logged|by|call|caller|card|case|cast|catalog|catch|cert|certificate|change_retention|change_tracking|change_tracking_context|changes|char|character|character_set|check_expiration|check_policy|checkconstraints|checkindex|checkpoint|cleanup_policy|clear|clear_port|close|codepage|collection|column_encryption_key|column_master_key|columnstore|columnstore_archive|colv_80_to_100|colv_100_to_80|commit_differential_base|committed|compatibility_level|compress_all_row_groups|compression|compression_delay|concat_null_yields_null|concatenate|configuration|connect|continue|continue_after_error|contract|contract_name|control|conversation|conversation_group_id|conversation_handle|copy|copy_only|count_rows|counter|create(\\s+or\\s+alter)?|credential|cross|cryptographic|cryptographic_provider|cube|cursor_close_on_commit|cursor_default|data|data_compression|data_flush_interval_seconds|data_mirroring|data_purity|data_source|database|database_name|database_snapshot|datafiletype|date_correlation_optimization|date|datefirst|dateformat|date_format|datetime|datetime2|datetimeoffset|days|db_chaining|dbid|dbidexec|dbo_only|deadlock_priority|deallocate|dec|decimal|declare(\\s+cursor)?|decrypt|decrypt_a|decryption|default_database|default_language|default_logon_domain|default_schema|definition|delay|delayed_durability|delimitedtext|density_vector|dependent|des|description|desired_state|desx|differential|digest|disable|disable_broker|disable_def_cnst_chk|disabled|disk|distinct|distributed|distribution|drop|drop_existing|dts_buffers|dump|durability|dynamic|edition|elements|else|emergency|empty|enable|enable_broker|enabled|encoding|encrypted|encrypted_value|encryption|encryption_type|end|endpoint|endpoint_url|enhancedintegrity|entry|error_broker_conversations|errorfile|estimateonly|event|except|exec|executable|execute|exists|expand|expiredate|expiry_date|explicit|external|external_access|failover|failover_mode|failure_condition_level|fast|fast_forward|fastfirstrow|federated_service_account|fetch|field_terminator|fieldterminator|file|filelistonly|filegroup|filename|filestream|filestream_log|filestream_on|filetable|file_format|filter|first_row|fips_flagger|fire_triggers|first|firstrow|float|flush_interval_seconds|fmtonly|following|force|force_failover_allow_data_loss|force_service_allow_data_loss|forced|forceplan|formatfile|format_options|format_type|formsof|forward_only|free_cursors|free_exec_context|fullscan|fulltext|fulltextall|fulltextkey|function|generated|get|geography|geometry|global|go|goto|governor|guid|hadoop|hardening|hash|hashed|header_limit|headeronly|health_check_timeout|hidden|hierarchyid|histogram|histogram_steps|hits_cursors|hits_exec_context|hours|http|identity|identity_value|if|ifnull|ignore_constraints|ignore_dup_key|ignore_dup_row|ignore_triggers|image|immediate|implicit_transactions|include|include_null_values|inflectional|init|initiator|insensitive|insert|instead|int|integer|integrated|intersect|intermediate|interval_length_minutes|into|inuse_cursors|inuse_exec_context|io|is|isabout|iso_week|isolation|job_tracker_location|json|keep|keep_nulls|keep_replication|keepdefaults|keepfixed|keepidentity|keepnulls|kerberos|key|key_path|key_source|key_store_provider_name|keyset|kill|kilobytes_per_batch|labelonly|langid|language|last|lastrow|legacy_cardinality_estimation|length|level|lifetime|lineage_80_to_100|lineage_100_to_80|listener_ip|listener_port|load|loadhistory|lob_compaction|local|local_service_name|locate|location|lock_escalation|lock_timeout|lockres|login|login_type|loop|manual|mark_in_use_for_removal|masked|master|max_queue_readers|max_duration|max_outstanding_io_per_volume|maxdop|maxerrors|maxlength|maxtransfersize|max_plans_per_query|max_storage_size_mb|mediadescription|medianame|mediapassword|memogroup|memory_optimized|merge|message|message_forward_size|message_forwarding|microsecond|millisecond|minutes|mirror_address|misses_cursors|misses_exec_context|mixed|modify|money|move|multi_user|must_change|name|namespace|nanosecond|native|native_compilation|nchar|ncharacter|never|new_account|new_broker|newname|next|no|no_browsetable|no_checksum|no_compression|no_infomsgs|no_triggers|no_truncate|nocount|noexec|noexpand|noformat|noinit|nolock|nonatomic|nondurable|none|norecompute|norecovery|noreset|norewind|noskip|not|notification|nounload|now|nowait|ntext|ntlm|numeric|numeric_roundabort|nvarchar|object|objid|oem|offline|old_account|online|operation_mode|open|openjson|optimistic|option|orc|out|outer|output|over|override|owner|ownership|pad_index|page|page_checksum|page_verify|pagecount|paglock|param|parameter_sniffing|parameter_type_expansion|parameterization|parquet|parseonly|partial|partition|partner|password|path|pause|percentage|permission_set|persisted|period|physical_only|plan_forcing_mode|policy|pool|population|ports|preceding|precision|predicate|presume_abort|primary|primary_role|print|prior|priority |priority_level|private|proc(edure)?|procedure_name|profile|provider|query_capture_mode|query_governor_cost_limit|query_optimizer_hotfixes|query_store|queue|quoted_identifier|raiserror|range|raw|rcfile|rc2|rc4|rc4_128|rdbms|read_committed_snapshot|read|read_only|read_write|readcommitted|readcommittedlock|readonly|readpast|readuncommitted|readwrite|real|rebuild|receive|recmodel_70backcomp|recompile|reconfigure|recovery|recursive|recursive_triggers|redo_queue|reject_sample_value|reject_type|reject_value|relative|remote|remote_data_archive|remote_proc_transactions|remote_service_name|remove|removed_cursors|removed_exec_context|reorganize|repeat|repeatable|repeatableread|replica|replicated|replnick_100_to_80|replnickarray_80_to_100|replnickarray_100_to_80|required|required_cursopt|resample|reset|resource|resource_manager_location|restart|restore|restricted_user|resume|retaindays|retention|return|revert|rewind|rewindonly|returns|robust|role|rollup|root|round_robin|route|row|rowdump|rowguidcol|rowlock|row_terminator|rows|rows_per_batch|rowsets_only|rowterminator|rowversion|rsa_1024|rsa_2048|rsa_3072|rsa_4096|rsa_512|safe|safety|sample|save|schema|schemabinding|scoped|scroll|scroll_locks|sddl|secexpr|secondary|secondary_only|secondary_role|secret|security|securityaudit|selective|self|send|sent|sequence|serde_method|serializable|server|service|service_broker|service_name|service_objective|session_timeout|session|sessions|seterror|setopts|sets|shard_map_manager|shard_map_name|sharded|shared_memory|show_statistics|showplan_all|showplan_text|showplan_xml|showplan_xml_with_recompile|shrinkdb|shutdown|sid|signature|simple|single_blob|single_clob|single_nclob|single_user|singleton|site|size_based_cleanup_mode|skip|smalldatetime|smallint|smallmoney|snapshot|snapshot_import|snapshotrestorephase|soap|softnuma|sort_in_tempdb|sorted_data|sorted_data_reorg|spatial|sql|sql_bigint|sql_binary|sql_bit|sql_char|sql_date|sql_decimal|sql_double|sql_float|sql_guid|sql_handle|sql_longvarbinary|sql_longvarchar|sql_numeric|sql_real|sql_smallint|sql_time|sql_timestamp|sql_tinyint|sql_tsi_day|sql_tsi_frac_second|sql_tsi_hour|sql_tsi_minute|sql_tsi_month|sql_tsi_quarter|sql_tsi_second|sql_tsi_week|sql_tsi_year|sql_type_date|sql_type_time|sql_type_timestamp|sql_varbinary|sql_varchar|sql_variant|sql_wchar|sql_wlongvarchar|ssl|ssl_port|standard|standby|start|start_date|started|stat_header|state|statement|static|statistics|statistics_incremental|statistics_norecompute|statistics_only|statman|stats_stream|status|stop|stop_on_error|stopat|stopatmark|stopbeforemark|stoplist|stopped|string_delimiter|subject|supplemental_logging|supported|suspend|symmetric|synchronous_commit|synonym|sysname|system|system_time|system_versioning|table|tableresults|tablock|tablockx|take|tape|target|target_index|target_partition|tcp|temporal_history_retention|text|textimage_on|then|thesaurus|throw|time|timeout|timestamp|tinyint|to|top|torn_page_detection|track_columns_updated|tran|transaction|transfer|triple_des|triple_des_3key|truncate|trustworthy|try|tsql|type|type_desc|type_warning|tzoffset|uid|unbounded|uncommitted|uniqueidentifier|unlimited|unload|unlock|unsafe|updlock|url|use|useplan|useroptions|use_type_default|using|utcdatetime|valid_xml|validation|value|values|varbinary|varchar|verbose|verifyonly|version|view_metadata|virtual_device|visiblity|waitfor|webmethod|weekday|weight|well_formed_xml|when|while|widechar|widechar_ansi|widenative|windows|with|within|witness|without|without_array_wrapper|workload|wsdl|xact_abort|xlock|xml|xmlschema|xquery|xsinil|zone)(?![0-9A-Za-z_-])\\b"},{"include":"#comments"},{"name":"meta.create.openesql","match":"(?i:^\\s*(create(?:\\s+or\\s+replace)?)\\s+(aggregate|conversion|database|domain|function|group|(unique\\s+)?index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\s+)(['\"`]?)(\\w+)\\4","captures":{"1":{"name":"keyword.other.create.openesql"},"2":{"name":"keyword.other.openesql"},"5":{"name":"entity.name.function.openesql"}}},{"name":"meta.drop.openesql","match":"(?i:^\\s*(drop)\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view))","captures":{"1":{"name":"keyword.other.create.openesql"},"2":{"name":"keyword.other.openesql"}}},{"name":"meta.drop.openesql","match":"(?i:\\s*(drop)\\s+(table)\\s+(\\w+)(\\s+cascade)?\\b)","captures":{"1":{"name":"keyword.other.create.openesql"},"2":{"name":"keyword.other.table.openesql"},"3":{"name":"entity.name.function.openesql"},"4":{"name":"keyword.other.cascade.openesql"}}},{"name":"meta.alter.openesql","match":"(?i:^\\s*(alter)\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|proc(edure)?|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\s+)","captures":{"1":{"name":"keyword.other.create.openesql"},"2":{"name":"keyword.other.table.openesql"}}},{"match":"(?xi)\n\n\t\t\t\t# normal stuff, capture 1\n\t\t\t\t \\b(bigint|bigserial|bit|boolean|box|bytea|cidr|circle|date|double\\sprecision|inet|int|integer|line|lseg|macaddr|money|oid|path|point|polygon|real|serial|smallint|sysdate|text)\\b\n\n\t\t\t\t# numeric suffix, capture 2 + 3i\n\t\t\t\t|\\b(bit\\svarying|character\\s(?:varying)?|tinyint|var\\schar|float|interval)\\((\\d+)\\)\n\n\t\t\t\t# optional numeric suffix, capture 4 + 5i\n\t\t\t\t|\\b(char|number|varchar\\d?)\\b(?:\\((\\d+)\\))?\n\n\t\t\t\t# special case, capture 6 + 7i + 8i\n\t\t\t\t|\\b(numeric|decimal)\\b(?:\\((\\d+),(\\d+)\\))?\n\n\t\t\t\t# special case, captures 9, 10i, 11\n\t\t\t\t|\\b(times?)\\b(?:\\((\\d+)\\))?(\\swith(?:out)?\\stime\\szone\\b)?\n\n\t\t\t\t# special case, captures 12, 13, 14i, 15\n\t\t\t\t|\\b(timestamp)(?:(s|tz))?\\b(?:\\((\\d+)\\))?(\\s(with|without)\\stime\\szone\\b)?\n\n\t\t\t","captures":{"1":{"name":"storage.type.openesql"},"10":{"name":"constant.numeric.openesql"},"11":{"name":"storage.type.openesql"},"12":{"name":"storage.type.openesql"},"13":{"name":"storage.type.openesql"},"14":{"name":"constant.numeric.openesql"},"15":{"name":"storage.type.openesql"},"2":{"name":"storage.type.openesql"},"3":{"name":"constant.numeric.openesql"},"4":{"name":"storage.type.openesql"},"5":{"name":"constant.numeric.openesql"},"6":{"name":"storage.type.openesql"},"7":{"name":"constant.numeric.openesql"},"8":{"name":"constant.numeric.openesql"},"9":{"name":"storage.type.openesql"}}},{"name":"storage.modifier.openesql","match":"(?i:\\b((?:primary|foreign)\\s+key|references|on\\sdelete(\\s+cascade)?|check|constraint)\\b)"},{"name":"constant.numeric.openesql","match":"\\b\\d+\\b"},{"name":"keyword.other.DML.openesql","match":"(?i:\\b(select(\\s+distinct)?|insert\\s+(ignore\\s+)?into|update|delete|from|set|where|group\\sby|or|like|and|union(\\s+all)?|having|order\\sby|limit|(inner|cross)\\s+join|join|straight_join|full\\s+outer\\s+join|(left|right)(\\s+outer)?\\s+join|natural(\\s+(left|right)(\\s+outer)?)?\\s+join)\\b)"},{"name":"keyword.other.DDL.create.II.openesql","match":"(?i:\\b(on|off|((is\\s+)?not\\s+)?null)\\b)"},{"name":"keyword.other.DML.II.openesql","match":"(?i:\\bvalues\\b)"},{"name":"keyword.other.extra.openesql","match":"(?i:\\b(whenever|of|for|cursor|found|insensitive|sensitive)\\b)"},{"name":"keyword.other.LUW.openesql","match":"(?i:\\b(begin(\\s+work)?|start\\s+transaction|commit(\\s+work)?|rollback(\\s+work)?)\\b)"},{"name":"keyword.other.authorization.openesql","match":"(?i:\\b(grant(\\swith\\sgrant\\soption)?|revoke)\\b)"},{"name":"keyword.other.data-integrity.openesql","match":"(?i:\\bin\\b)"},{"name":"keyword.other.object-comments.openesql","match":"(?i:^\\s*(comment\\s+on\\s+(table|column|aggregate|constraint|database|domain|function|index|operator|rule|schema|sequence|trigger|type|view))\\s+.*?\\s+(is)\\s+)"},{"name":"keyword.other.alias.openesql","match":"(?i)\\bAS\\b"},{"name":"keyword.other.order.openesql","match":"(?i)\\b(DESC|ASC)\\b"},{"name":"keyword.operator.star.openesql","match":"\\*"},{"name":"keyword.operator.comparison.openesql","match":"[!\u003c\u003e]?=|\u003c\u003e|\u003c|\u003e"},{"name":"keyword.operator.math.openesql","match":"-|\\+|/"},{"name":"keyword.operator.concatenator.openesql","match":"\\|\\|"},{"name":"support.function.aggregate.openesql","match":"(?i)\\b(avg|checksum_agg|count|count_big|grouping|grouping_id|max|min|sum|stdev|stdevp|var|varp)\\b"},{"name":"support.function.conversion.openesql","match":"(?i)\\b(cast|convert|parse|try_cast|try_convert|try_parse)\\b"},{"name":"support.function.cursor.openesql","match":"(?i)\\b(cursor_status)\\b"},{"name":"support.function.datetime.openesql","match":"(?i)\\b(sysdatetime|sysdatetimeoffset|sysutcdatetime|current_time(stamp)?|getdate|getutcdate|datename|datepart|day|month|year|datefromparts|datetime2fromparts|datetimefromparts|datetimeoffsetfromparts|smalldatetimefromparts|timefromparts|datediff|dateadd|eomonth|switchoffset|todatetimeoffset|isdate)\\b"},{"name":"support.function.expression.openesql","match":"(?i)\\b(coalesce|nullif)\\b"},{"name":"support.function.globalvar.openesql","match":"(?\u003c!@)@@(?i)\\b(cursor_rows|connections|cpu_busy|datefirst|dbts|error|fetch_status|identity|idle|io_busy|langid|language|lock_timeout|max_connections|max_precision|nestlevel|options|packet_errors|pack_received|pack_sent|procid|remserver|rowcount|servername|servicename|spid|textsize|timeticks|total_errors|total_read|total_write|trancount|version)\\b"},{"name":"support.function.logical.openesql","match":"(?i)\\b(choose|iif)\\b"},{"name":"support.function.mathematical.openesql","match":"(?i)\\b(abs|acos|asin|atan|atn2|ceiling|cos|cot|degrees|exp|floor|log|log10|pi|power|radians|rand|round|sign|sin|sqrt|square|tan)\\b"},{"name":"support.function.metadata.openesql","match":"(?i)\\b(app_name|applock_mode|applock_test|assemblyproperty|col_length|col_name|columnproperty|database_principal_id|databasepropertyex|db_id|db_name|file_id|file_idex|file_name|filegroup_id|filegroup_name|filegroupproperty|fileproperty|fulltextcatalogproperty|fulltextserviceproperty|index_col|indexkey_property|indexproperty|object_definition|object_id|object_name|object_schema_name|objectproperty|objectpropertyex|original_db_name|parsename|schema_id|schema_name|scope_identity|serverproperty|stats_date|type_id|type_name|typeproperty)\\b"},{"name":"support.function.ranking.openesql","match":"(?i)\\b(rank|dense_rank|ntile|row_number)\\b"},{"name":"support.function.rowset.openesql","match":"(?i)\\b(opendatasource|openrowset|openquery|openxml)\\b"},{"name":"support.function.security.openesql","match":"(?i)\\b(certencoded|certprivatekey|current_user|database_principal_id|has_perms_by_name|is_member|is_rolemember|is_srvrolemember|original_login|permissions|pwdcompare|pwdencrypt|schema_id|schema_name|session_user|suser_id|suser_sid|suser_sname|system_user|suser_name|user_id|user_name)\\b"},{"name":"support.function.string.openesql","match":"(?i)\\b(ascii|char|charindex|concat|difference|format|left|len|lower|ltrim|nchar|patindex|quotename|replace|replicate|reverse|rtrim|soundex|space|str|string_agg|string_escape|string_split|stuff|substring|translate|trim|unicode|upper)\\b"},{"name":"support.function.system.openesql","match":"(?i)\\b(binary_checksum|checksum|compress|connectionproperty|context_info|current_request_id|current_transaction_id|decompress|error_line|error_message|error_number|error_procedure|error_severity|error_state|formatmessage|get_filestream_transaction_context|getansinull|host_id|host_name|isnull|isnumeric|min_active_rowversion|newid|newsequentialid|rowcount_big|session_context|session_id|xact_state)\\b"},{"name":"support.function.textimage.openesql","match":"(?i)\\b(patindex|textptr|textvalid)\\b"},{"match":"(\\w+?)\\.(\\w+)","captures":{"1":{"name":"constant.other.database-name.openesql"},"2":{"name":"constant.other.table-name.openesql"}}},{"include":"#strings"},{"include":"#regexps"},{"name":"meta.block.openesql","match":"(\\()(\\))","captures":{"1":{"name":"punctuation.section.scope.begin.openesql"},"2":{"name":"punctuation.section.scope.end.openesql"}}}],"repository":{"comments":{"patterns":[{"begin":"(^[ \\t]+)?(?=--)","end":"(?!\\G)","patterns":[{"name":"comment.line.double-dash.openesql","begin":"--","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.openesql"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.openesql"}}},{"begin":"(^[ \\t]+)?(?=#)","end":"(?!\\G)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.openesql"}}},{"name":"comment.block.c","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"punctuation.definition.comment.openesql"}}}]},"regexps":{"patterns":[{"name":"string.regexp.openesql","begin":"/(?=\\S.*/)","end":"/","patterns":[{"include":"#string_interpolation"},{"name":"constant.character.escape.slash.openesql","match":"\\\\/"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.regexp.modr.openesql","begin":"%r\\{","end":"\\}","patterns":[{"include":"#string_interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}}]},"string_escape":{"name":"constant.character.escape.openesql","match":"\\\\."},"string_interpolation":{"name":"string.interpolated.openesql","match":"(#\\{)([^\\}]*)(\\})","captures":{"1":{"name":"punctuation.definition.string.begin.openesql"},"3":{"name":"punctuation.definition.string.end.openesql"}}},"strings":{"patterns":[{"name":"string.quoted.single.openesql","match":"(N)?(')[^']*(')","captures":{"1":{"name":"punctuation.definition.string.begin.openesql"},"2":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.quoted.single.openesql","begin":"'","end":"'","patterns":[{"include":"#string_escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.quoted.other.backtick.openesql","match":"(`)[^`\\\\]*(`)","captures":{"1":{"name":"punctuation.definition.string.begin.openesql"},"2":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.quoted.other.backtick.openesql","begin":"`","end":"`","patterns":[{"include":"#string_escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.quoted.double.openesql","match":"(\")[^\"#]*(\")","captures":{"1":{"name":"punctuation.definition.string.begin.openesql"},"2":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.quoted.double.openesql","begin":"\"","end":"\"","patterns":[{"include":"#string_interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}},{"name":"string.other.quoted.brackets.openesql","begin":"%\\{","end":"\\}","patterns":[{"include":"#string_interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.openesql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.openesql"}}}]}}}
@@ -0,0 +1 @@
1
+ {"name":"openqasm","scopeName":"source.openqasm","patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#operators"},{"include":"#types"},{"include":"#constants"},{"include":"#strings"},{"include":"#brackets"},{"include":"#variables"}],"repository":{"brackets":{"patterns":[{"name":"punctuation.bracket.openqasm","match":"[\\[\\]\\(\\)\\{\\}]"}]},"comments":{"patterns":[{"name":"comment.line.double-slash","match":"//.*$"},{"name":"comment.block","begin":"/\\*","end":"\\*/"}]},"constants":{"patterns":[{"name":"constant.language.openqasm","match":"\\b(true|false|theta|pi|θ|π|ℇ|τ|euler|tau|λ|lambda|φ|phi|@)\\b"},{"name":"constant.numeric.openqasm","match":"\\b[\\d_]*\\.?[\\d_](im|dt|ns|us|ms|s|)?\\b"}]},"keywords":{"patterns":[{"name":"keyword.control.openqasm","match":"\\b(in|for|return|if|else|switch|while)\\b"},{"name":"keyword.other.openqasm","match":"\\b(OPENQASM|include|qubit|reset|mutable|readonly|#dim|stretch|delay|barrier|box|input|output|int|float|bit|bool|uint|angle|complex|const|defcal|def|gate|array|duration|let|measure|pragma|defcalgrammar|cal|qreg|creg|extern|port|frame|waveform)\\b"}]},"operators":{"patterns":[{"name":"keyword.other.operator.openqasm","match":"\\b(=)|(!)|(\u003c)|(\u003e)|(\\+)|(-)|(\\*)|(\\*\\*)|(\\/)|(\\^)|(%)|(\\|)|(\\\u0026)|(\\\u0026\\\u0026)|(\\~)|(\\|\\|)|(\u003c\u003c)|(\u003e\u003e)"}]},"strings":{"name":"string.quoted.double.openqasm","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.openqasm","match":"\\\\."}]},"types":{"patterns":[{"name":"storage.type.openqasm","match":"\\b(angle|bit|bool|complex|duration|float|int|stretch|uint|qreg|creg)(\\[[a-zA-Z_][a-zA-Z0-9_]*\\])?\\b"}]},"variables":{"patterns":[{"name":"variable.other.openqasm","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}]}}}
@@ -0,0 +1 @@
1
+ {"scopeName":"source.overpassql","patterns":[{"include":"#TOP"}],"repository":{"TOP":{"patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#start-statement-context"}]},"assign-variable":{"name":"meta.overpassql.output-set","match":"(-\u003e)\\s*+(\\.)\\s*+([_a-zA-Z][_a-zA-Z0-9]*+)(?=\\s*+(?:;|$))","captures":{"1":{"name":"keyword.operator.assignment.overpassql"},"2":{"name":"punctuation.definition.variable.overpassql"},"3":{"name":"variable.other.overpassql"}}},"bareword":{"name":"meta.overpassql.bareword","match":"[a-zA-Z][a-zA-Z0-9]*+"},"block-comment":{"name":"comment.block.overpassql","begin":"\\/\\*","end":"\\*\\/","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.overpassql"}}},"block-construct":{"name":"meta.overpassql.statement.block","begin":"if|else|foreach|for|complete|retro|compare","end":"(?\u003c=[;)}])","patterns":[{"include":"#whitespace"},{"include":"#comment"},{"include":"#parens-evaluator"},{"include":"#block-group"}],"beginCaptures":{"0":{"name":"keyword.control.overpassql"}}},"block-group":{"name":"meta.block.overpassql","begin":"\\{","end":"\\}","patterns":[{"include":"#whitespace"},{"include":"#comment"},{"include":"#start-statement-context"}],"beginCaptures":{"0":{"name":"punctuation.section.block.begin.overpassql punctuation.section.braces.begin"}},"endCaptures":{"0":{"name":"punctuation.section.block.end.overpassql punctuation.section.end.begin"}}},"builtin-evaluator-function-name":{"name":"meta.overpassql.evaluator.function-name","match":"(\\.)?+(id|type|is_tag|keys|version|timestamp|changeset|uid|user|count_tags|count_members|count_distinct_members|count_by_role|count_distinct_by_role|per_member|per_vertex|pos|mtype|ref|role|angle|is_closed|geom|length|lat|lon|lstr|poly|u|set|min|max|sum|count|gcat|number|is_number|suffix|abs|date|is_date|center|tracehull|lrs_in|lrs_isect|lrs_union|lrs_min|lrs_max)(?=\\()","captures":{"1":{"name":"punctuation.accessor.overpassql"},"2":{"name":"support.function.overpassql"}}},"comments":{"patterns":[{"include":"#block-comment"},{"include":"#line-comment"}]},"evaluator":{"patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#extended-overpass-turbo-queries"},{"include":"#evaluator-operator"},{"include":"#string-literal"},{"include":"#number-literal"},{"include":"#evaluator-variable"},{"include":"#evaluator-tag-value"},{"include":"#evaluator-field-access"},{"include":"#builtin-evaluator-function-name"},{"include":"#evaluator-function-name"},{"include":"#evaluator-function-params"}]},"evaluator-field-access":{"name":"meta.overpassql.evaluator.field-access","match":"(\\.)([a-zA-Z][a-zA-Z0-9]*+)(?!\\()","captures":{"1":{"name":"punctuation.accessor.overpassql"},"2":{"name":"variable.other.member.overpassql"}}},"evaluator-function-name":{"name":"meta.overpassql.evaluator.function-name","match":"(\\.)?+([a-zA-Z][a-zA-Z0-9]*+)(?=\\()","captures":{"1":{"name":"punctuation.accessor.overpassql"},"2":{"name":"variable.function.overpassql"}}},"evaluator-function-params":{"name":"meta.group.overpassql meta.parens.overpassql meta.overpassql.function.params","begin":"\\(","end":"\\)","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#parameter-separator"},{"include":"#evaluator"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.overpassql punctuation.section.parens.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.overpassql punctuation.section.parens.end.overpassql"}}},"evaluator-operator":{"match":"(::)|(!|\\|\\||\u0026\u0026|==|!=|\u003c=|\u003e=|\u003c|\u003e)|(\\+|-|\\*|/)|(\\?|:)","captures":{"1":{"name":"keyword.other.overpassql"},"2":{"name":"keyword.operator.logical.overpassql"},"3":{"name":"keyword.operator.arithmetic.overpassql"},"4":{"name":"keyword.operator.other.overpassql"}}},"evaluator-tag-value":{"name":"meta.overpassql.evaluator.tag-value","begin":"\\[","end":"\\]","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#string-literal"},{"include":"#bareword"},{"include":"#evaluator"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.overpassql"}}},"evaluator-variable":{"name":"variable.other.overpassql","match":"([a-zA-Z][a-zA-Z0-9]*+)(?=\\.)"},"expression":{"patterns":[{"include":"#extended-overpass-turbo-queries"},{"include":"#pair-expression"},{"include":"#number-literal"},{"include":"#string-literal"},{"include":"#setting-special-fields"},{"include":"#tag-expression"},{"include":"#query-type"},{"include":"#parens-expression"}]},"extended-overpass-turbo-queries":{"name":"meta.overpassql.turbo.query","begin":"{{","end":"}}","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#number-literal"},{"include":"#string-literal"},{"include":"#overpass-turbo-query-name"},{"include":"#overpass-turbo-query-separator"},{"include":"#overpass-turbo-query-definition"},{"include":"#overpass-turbo-custom-query-name"}],"beginCaptures":{"0":{"name":"keyword.other.overpassql.turbo.begin"}},"endCaptures":{"0":{"name":"keyword.other.overpassql.turbo.end"}}},"fallback":{"name":"meta.overpassql.unknown","begin":"(?=.)","end":"(?\u003c=[;\\{|\\}])","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#number-literal"},{"include":"#string-literal"},{"include":"#query-type"},{"include":"#assign-variable"},{"include":"#input-set"}]},"function-call":{"name":"meta.function-call.overpassql","begin":"(is_in|timeline)(\\()","end":"\\)","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#expression"},{"include":"#parameter-separator"}],"beginCaptures":{"1":{"name":"support.function.overpassql"},"2":{"name":"punctuation.section.group.begin.overpassql punctuation.section.parens.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.overpassql punctuation.section.parens.end.overpassql"}}},"function-call-names":{"name":"support.function.overpassql","match":"is_in|timeline"},"function-call-statement-function-name":{"name":"meta.overpassql.statement.function-call","begin":"(?=(?:\\.\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+[a-zA-Z][a-zA-Z0-9]*+\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+)?+(?:is_in|timeline))","end":";","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#input-set"},{"include":"#function-call"},{"include":"#assign-variable"}],"endCaptures":{"0":{"name":"punctuation.terminator.statement.overpassql"}}},"function-word-statement-word-function-name":{"name":"meta.overpassql.statement.word-function","begin":"(?=(?:\\.\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+[a-zA-Z][a-zA-Z0-9]*+\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+)?+(?:local|convert|make))","end":";","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#input-set"},{"include":"#word-function-names"},{"include":"#word-function-param"},{"include":"#assign-variable"}],"endCaptures":{"0":{"name":"punctuation.terminator.statement.overpassql"}}},"generic-function-call":{"name":"meta.function-call.overpassql.generic","begin":"(\\w++)(\\()","end":"\\)","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#expression"},{"include":"#parameter-separator"}],"beginCaptures":{"1":{"name":"variable.function.overpassql"},"2":{"name":"punctuation.section.group.begin.overpassql punctuation.section.parens.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.overpassql punctuation.section.parens.end.overpassql"}}},"generic-function-statement-generic-name":{"name":"meta.overpassql.statement.generic-function","begin":"(?=(?:\\.\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+[a-zA-Z][a-zA-Z0-9]*+\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+)?+\\w)","end":";","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#input-set"},{"include":"#generic-function-call"},{"include":"#assign-variable"}],"endCaptures":{"0":{"name":"punctuation.terminator.statement.overpassql"}}},"input-set":{"match":"(\\.)\\s*+([_a-zA-Z][_a-zA-Z0-9]*+)","captures":{"1":{"name":"punctuation.definition.variable.overpassql"},"2":{"name":"variable.other.overpassql"}}},"item-statement-dot-semicolon":{"name":"meta.overpassql.statement.item","begin":"(?=\\.\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+[a-zA-Z][a-zA-Z0-9]*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+;)","end":";","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#input-set"}],"endCaptures":{"0":{"name":"punctuation.terminator.statement.overpassql"}}},"line-comment":{"name":"comment.double-slash.overpassql","match":"(//).*+$","captures":{"1":{"name":"punctuation.definition.comment.begin.overpassql"}}},"number-literal":{"match":"(?\u003c!\\w)(-)?+((?:[1-9][0-9]*+|0)(?:\\.[0-9]++)?+)(?!\\w)","captures":{"1":{"name":"keyword.operator.arithmetic.overpassql"},"2":{"name":"constant.numeric.overpassql"}}},"operator-names":{"name":"keyword.operator.other.overpassql","match":"\u003c\u003c|\u003e\u003e|\u003c|\u003e"},"operator-statement-operator-symbol":{"name":"meta.overpassql.statement.operator","begin":"(?=(?:\\.\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+[a-zA-Z][a-zA-Z0-9]*+\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+)?+(?:\u003c\u003c|\u003e\u003e|\u003c|\u003e))","end":";","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#input-set"},{"include":"#operator-names"},{"include":"#assign-variable"}],"endCaptures":{"0":{"name":"punctuation.terminator.statement.overpassql"}}},"out-keyword":{"name":"keyword.other.overpassql","match":"out\\b"},"out-parameter":{"patterns":[{"include":"#out-parameter-keyword"},{"include":"#positive-integer"},{"include":"#parens-expression"}]},"out-parameter-keyword":{"match":"count|ids|skel|body|tags|meta|noids|geom|center|bb|asc|qt","captures":{"0":{"name":"support.constant.overpassql.out"}}},"out-statement-keyword":{"name":"meta.overpassql.statement.out","begin":"(?=(?:\\.\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+[a-zA-Z][a-zA-Z0-9]*+\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+)?+out)","end":";","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#input-set"},{"include":"#out-keyword"},{"include":"#out-parameter"}],"endCaptures":{"0":{"name":"punctuation.terminator.statement.overpassql"}}},"overpass-turbo-custom-query-name":{"name":"variable.other.overpassql.turbo","match":"\\b[a-zA-Z][a-zA-Z0-9]*+(?=\\w*[:}=])"},"overpass-turbo-query-definition":{"name":"keyword.operator.assignment.overpassql.turbo","match":"="},"overpass-turbo-query-name":{"name":"support.constant.overpassql.turbo","match":"\\b(bbox|center|date|geocodeId|geocodeArea|geocodeBbox|geocodeCoords|style|data)\\b"},"overpass-turbo-query-separator":{"name":"punctuation.separator.delimiter.colon.overpassql.turbo","match":":"},"pair-expression":{"name":"meta.overpassql.pair","begin":"([a-zA-Z][a-zA-Z0-9]*+)(\\()","end":"\\)","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#parameter-separator"},{"include":"#expression"},{"include":"#skip-term"}],"beginCaptures":{"1":{"name":"entity.other.overpassql"},"2":{"name":"punctuation.section.group.begin.overpassql punctuation.section.parens.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.overpassql punctuation.section.parens.end.overpassql"}}},"parameter-separator":{"name":"punctuation.separator.delimiter.comma.overpassql","match":","},"parens-evaluator":{"name":"meta.overpassql.evaluator-group","begin":"\\(","end":"\\)","patterns":[{"include":"#whitespace"},{"include":"#comment"},{"include":"#evaluator"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.overpassql punctuation.section.parens.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.overpassql punctuation.section.parens.end.overpassql"}}},"parens-expression":{"begin":"\\(","end":"\\)","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#expression"},{"include":"#parameter-separator"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.overpassql punctuation.section.parens.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.overpassql punctuation.section.parens.end.overpassql"}}},"positive-integer":{"match":"(?\u003c!\\w)([1-9][0-9]*+|0)(?!\\w)","captures":{"0":{"name":"constant.numeric.overpassql"}}},"q-string":{"name":"string.quoted.single.overpassql meta.string.overpassql","begin":"'","end":"'","patterns":[{"include":"#string-escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.overpassql"}}},"qq-string":{"name":"string.quoted.double.overpassql meta.string.overpassql","begin":"\"","end":"\"","patterns":[{"include":"#string-escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.overpassql"}}},"query-filter":{"patterns":[{"include":"#query-filter-haskv"},{"include":"#query-filter-intersect"},{"include":"#query-filter-paren"}]},"query-filter-haskv":{"name":"meta.overpassql.query.filter.kv","begin":"\\[","end":"\\]","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#query-filter-haskv-operators"},{"include":"#query-filter-haskv-insensitive"},{"include":"#string-literal"},{"include":"#bareword"}],"beginCaptures":{"0":{"name":"punctuation.definition.brackets.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.definition.brackets.end.overpassql"}}},"query-filter-haskv-insensitive":{"name":"keyword.operator.logical.overpassql","match":"(,)\\s*+(i)\\s*+(?=\\])","captures":{"1":{"name":"punctuation.separator.delimiter.comma.overpassql"},"2":{"name":"support.constant.overpassql.i"}}},"query-filter-haskv-operators":{"name":"keyword.operator.logical.overpassql","match":"=|!=|~|!~|!"},"query-filter-intersect":{"name":"meta.overpassql.query.filter.intersect","match":"(\\.)\\s*+([_a-zA-Z][_a-zA-Z0-9]*+)","captures":{"1":{"name":"keyword.operator.arithmetic.overpassql.intersect"},"2":{"name":"variable.other.overpassql"}}},"query-filter-keywords":{"name":"keyword.other.overpassql meta.overpassql.query.filter.parens.keyword","match":"\\b(n|w|r|bn|bw|br|id|around|poly|newer|changed|user|uid|area|pivot|if)\\b"},"query-filter-paren":{"name":"meta.group.overpassql meta.parens.overpassql meta.overpassql.query.filter.parens","begin":"\\(","end":"\\)","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#query-filter-keywords"},{"include":"#evaluator"},{"include":"#query-filter-separator"},{"include":"#parameter-separator"},{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.overpassql punctuation.section.parens.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.overpassql punctuation.section.parens.end.overpassql"}}},"query-filter-separator":{"name":"punctuation.separator.delimiter.colon.overpassql","match":":"},"query-statement-query-type":{"name":"meta.overpassql.statement.query","begin":"(?=(?:node|way|relation|rel|derived|area|nwr)\\b)","end":";","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#query-type"},{"include":"#query-filter"},{"include":"#assign-variable"}],"endCaptures":{"0":{"name":"punctuation.terminator.statement.overpassql"}}},"query-type":{"name":"keyword.other.query.overpassql","match":"\\b(node|way|relation|rel|derived|area|nwr)\\b"},"set-difference-operator":{"name":"keyword.operator.logical.overpassql","match":"-"},"setting-bracket-colon":{"name":"meta.overpassql.setting","begin":"(\\[)(?=\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+\\w++\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+:)","end":"\\]","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#setting-name"},{"include":"#setting-param"},{"include":"#setting-separator"},{"include":"#parameter-separator"}],"beginCaptures":{"0":{"name":"punctuation.definition.brackets.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.definition.brackets.end.overpassql"}}},"setting-name":{"name":"keyword.other.setting","match":"\\b(timeout|maxsize|out|bbox|date|diff|adiff)\\b"},"setting-param":{"patterns":[{"include":"#setting-special-fields"},{"include":"#parameter-separator"},{"include":"#expression"}]},"setting-separator":{"name":"punctuation.separator.delimiter.colon.overpassql","match":":"},"setting-special-fields":{"name":"meta.overpassql.setting.special-field","match":"(::)(id|type|otype|lat|lon|version|timestamp|changeset|uid|user)\\b|(::)(count)(?:(:)(nodes|ways|relations|areas))?+\\b","captures":{"1":{"name":"punctuation.accessor.overpassql"},"2":{"name":"support.constant.overpassql"},"3":{"name":"punctuation.accessor.overpassql"},"4":{"name":"support.constant.overpassql"},"5":{"name":"punctuation.accessor.overpassql"},"6":{"name":"support.constant.overpassql"}}},"settings-statement-bracket-colon":{"name":"meta.overpassql.statement.settings-declaration","begin":"(?=\\[\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+\\w++\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+:)","end":";","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#setting-bracket-colon"}],"endCaptures":{"0":{"name":"punctuation.terminator.statement.overpassql"}}},"skip-term":{"name":"meta.overpassql.term","match":"[a-zA-Z][a-zA-Z0-9]*+"},"start-statement-context":{"name":"meta.context.overpassql.statement","begin":"(?=.)","end":"(?\u003c=;)","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#extended-overpass-turbo-queries"},{"include":"#settings-statement-bracket-colon"},{"include":"#query-statement-query-type"},{"include":"#out-statement-keyword"},{"include":"#item-statement-dot-semicolon"},{"include":"#operator-statement-operator-symbol"},{"include":"#function-call-statement-function-name"},{"include":"#function-word-statement-word-function-name"},{"include":"#statement-grouping"},{"include":"#block-construct"},{"include":"#generic-function-statement-generic-name"},{"include":"#block-group"},{"include":"#fallback"}]},"statement-grouping":{"name":"meta.overpassql.group","begin":"\\(","end":"\\)","patterns":[{"include":"#whitespace"},{"include":"#comment"},{"include":"#set-difference-operator"},{"include":"#start-statement-context"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.overpassql punctuation.section.parens.begin.overpassql"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.overpassql punctuation.section.parens.end.overpassql"}}},"string-escape":{"name":"constant.character.escape.overpassql","match":"\\\\[nt\"'\\\\]|\\\\u[0-9a-fA-F]{4}"},"string-literal":{"patterns":[{"include":"#qq-string"},{"include":"#q-string"}]},"tag-correspondance":{"name":"keyword.operator.assignment.overpassql","match":"="},"tag-expression":{"name":"meta.overpassql.tag-access","begin":"(::)(?=\\s*+(?:/\\*(?:[^*]|\\*[^/])*+\\*/\\s*+)*+[\"'a-zA-Z])","end":"(?=[,)])","patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#string-literal"},{"include":"#bareword"}],"beginCaptures":{"0":{"name":"punctuation.accessor.overpassql"}}},"tag-keywords":{"name":"meta.overpassql.tag-match.keyword","match":"(::)(id)?+","captures":{"1":{"name":"keyword.other.overpassql.key"},"2":{"name":"keyword.other.overpassql.id"}}},"tag-match":{"patterns":[{"include":"#whitespace"},{"include":"#comments"},{"include":"#tag-operators"},{"include":"#tag-correspondance"},{"include":"#tag-keywords"},{"include":"#evaluator"},{"include":"#string-literal"},{"include":"#bareword"}]},"tag-operators":{"name":"keyword.operator.overpassql","match":"!"},"whitespace":{"name":"meta.overpassql.whitespace","match":"[ \\t]++"},"word-function-names":{"name":"support.function.overpassql","match":"local|convert|make"},"word-function-param":{"patterns":[{"include":"#query-type"},{"include":"#tag-match"},{"include":"#parameter-separator"}]}}}
@@ -1 +1 @@
1
- {"name":"polar","scopeName":"source.polar","patterns":[{"include":"#comment"},{"include":"#rule"},{"include":"#rule-type"},{"include":"#inline-query"},{"include":"#resource-block"},{"include":"#test-block"},{"include":"#fixture"}],"repository":{"boolean":{"name":"constant.language.boolean","match":"\\b(true|false)\\b"},"comment":{"name":"comment.line.number-sign","match":"#.*"},"fixture":{"patterns":[{"name":"keyword.control","match":"\\bfixture\\b"},{"begin":"\\btest\\b","end":"\\bfixture\\b","beginCaptures":{"0":{"name":"keyword.control"}},"endCaptures":{"0":{"name":"keyword.control"}}}]},"inline-query":{"name":"meta.inline-query","begin":"\\?=","end":";","patterns":[{"include":"#term"}],"beginCaptures":{"0":{"name":"keyword.control"}}},"keyword":{"patterns":[{"name":"constant.character","match":"\\b(cut|or|debug|print|in|forall|if|and|of|not|matches|type|on|global)\\b"}]},"number":{"patterns":[{"name":"constant.numeric.float","match":"\\b[+-]?\\d+(?:(\\.)\\d+(?:e[+-]?\\d+)?|(?:e[+-]?\\d+))\\b"},{"name":"constant.numeric.integer","match":"\\b(\\+|\\-)[\\d]+\\b"},{"name":"constant.numeric.natural","match":"\\b[\\d]+\\b"}]},"object-literal":{"name":"constant.other.object-literal","begin":"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)\\s*\\{","end":"\\}","patterns":[{"include":"#string"},{"include":"#number"},{"include":"#boolean"}],"beginCaptures":{"1":{"name":"entity.name.type.resource"}}},"operator":{"match":"(\\+|-|\\*|\\/|\u003c|\u003e|=|!)","captures":{"1":{"name":"keyword.control"}}},"resource-block":{"name":"meta.resource-block","begin":"(?\u003cresourceType\u003e[a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*){0}((?:(resource|actor)\\s+(\\g\u003cresourceType\u003e)(?:\\s+(extends)\\s+(\\g\u003cresourceType\u003e(?:\\s*,\\s*\\g\u003cresourceType\u003e)*)\\s*,?\\s*)?)|(global))\\s*{","end":"\\}","patterns":[{"name":"punctuation.separator.sequence.declarations","match":";"},{"name":"meta.relation-declaration","begin":"\\{","end":"\\}","patterns":[{"include":"#specializer"},{"include":"#comment"},{"name":"punctuation.separator.sequence.dict","match":","}]},{"include":"#term"}],"beginCaptures":{"3":{"name":"keyword.control"},"4":{"name":"entity.name.type"},"5":{"name":"keyword.control"},"6":{"patterns":[{"name":"entity.name.type","match":"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)"}]},"7":{"name":"keyword.control"}}},"rule":{"name":"meta.rule","patterns":[{"include":"#rule-functor"},{"begin":"\\bif\\b","end":";","patterns":[{"include":"#term"}],"beginCaptures":{"0":{"name":"keyword.control.if"}}},{"match":";"}]},"rule-functor":{"begin":"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)\\s*\\(","end":"\\)","patterns":[{"include":"#specializer"},{"name":"punctuation.separator.sequence.list","match":","},{"include":"#term"}],"beginCaptures":{"1":{"name":"support.function.rule"}}},"rule-type":{"name":"meta.rule-type","begin":"\\btype\\b","end":";","patterns":[{"include":"#rule-functor"}],"beginCaptures":{"0":{"name":"keyword.other.type-decl"}}},"specializer":{"match":"[a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*\\s*:\\s*([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)","captures":{"1":{"name":"entity.name.type.resource"}}},"string":{"name":"string.quoted.double","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape","match":"\\\\."}]},"term":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#number"},{"include":"#keyword"},{"include":"#operator"},{"include":"#boolean"},{"include":"#object-literal"},{"name":"meta.bracket.list","begin":"\\[","end":"\\]","patterns":[{"include":"#term"},{"name":"punctuation.separator.sequence.list","match":","}]},{"name":"meta.bracket.dict","begin":"\\{","end":"\\}","patterns":[{"include":"#term"},{"name":"punctuation.separator.sequence.dict","match":","}]},{"name":"meta.parens","begin":"\\(","end":"\\)","patterns":[{"include":"#term"}]}]},"test-block":{"name":"meta.test-block","begin":"(test)\\s+(\"[^\"]*\")\\s*\\{","end":"\\}","patterns":[{"name":"meta.test-setup","begin":"(setup)\\s*\\{","end":"\\}","patterns":[{"include":"#rule"},{"include":"#comment"},{"include":"#fixture"}],"beginCaptures":{"1":{"name":"keyword.control"}}},{"include":"#rule"},{"name":"keyword.other","match":"\\b(assert|assert_not)\\b"},{"include":"#comment"}],"beginCaptures":{"1":{"name":"keyword.control"},"2":{"name":"string.quoted.double"}}}}}
1
+ {"name":"polar","scopeName":"source.polar","patterns":[{"include":"#comment"},{"include":"#rule"},{"include":"#rule-type"},{"include":"#inline-query"},{"include":"#resource-block"},{"include":"#test-block"},{"include":"#fixture"}],"repository":{"boolean":{"name":"constant.language.boolean","match":"\\b(true|false)\\b"},"comment":{"name":"comment.line.number-sign","match":"#.*"},"fixture":{"patterns":[{"name":"keyword.control","match":"\\bfixture\\b"},{"begin":"\\btest\\b","end":"\\bfixture\\b","beginCaptures":{"0":{"name":"keyword.control"}},"endCaptures":{"0":{"name":"keyword.control"}}}]},"inline-query":{"name":"meta.inline-query","begin":"\\?=","end":";","patterns":[{"include":"#term"}],"beginCaptures":{"0":{"name":"keyword.control"}}},"keyword":{"patterns":[{"name":"constant.character","match":"\\b(cut|or|debug|print|in|forall|if|and|of|not|matches|type|on|global)\\b"}]},"number":{"patterns":[{"name":"constant.numeric.float","match":"\\b[+-]?\\d+(?:(\\.)\\d+(?:e[+-]?\\d+)?|(?:e[+-]?\\d+))\\b"},{"name":"constant.numeric.integer","match":"\\b(\\+|\\-)[\\d]+\\b"},{"name":"constant.numeric.natural","match":"\\b[\\d]+\\b"}]},"object-literal":{"name":"constant.other.object-literal","begin":"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)\\s*\\{","end":"\\}","patterns":[{"include":"#string"},{"include":"#number"},{"include":"#boolean"}],"beginCaptures":{"1":{"name":"entity.name.type.resource"}}},"operator":{"match":"(\\+|-|\\*|\\/|\u003c|\u003e|=|!)","captures":{"1":{"name":"keyword.control"}}},"resource-block":{"name":"meta.resource-block","begin":"(?\u003cresourceType\u003e[a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*){0}((?:(resource|actor)\\s+(\\g\u003cresourceType\u003e)(?:\\s+(extends)\\s+(\\g\u003cresourceType\u003e(?:\\s*,\\s*\\g\u003cresourceType\u003e)*)\\s*,?\\s*)?)|(global))\\s*{","end":"\\}","patterns":[{"name":"punctuation.separator.sequence.declarations","match":";"},{"name":"meta.relation-declaration","begin":"\\{","end":"\\}","patterns":[{"include":"#specializer"},{"include":"#comment"},{"name":"punctuation.separator.sequence.dict","match":","}]},{"include":"#term"}],"beginCaptures":{"3":{"name":"keyword.control"},"4":{"name":"entity.name.type"},"5":{"name":"keyword.control"},"6":{"patterns":[{"name":"entity.name.type","match":"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)"}]},"7":{"name":"keyword.control"}}},"rule":{"name":"meta.rule","patterns":[{"include":"#rule-functor"},{"begin":"\\bif\\b","end":";","patterns":[{"include":"#term"}],"beginCaptures":{"0":{"name":"keyword.control.if"}}},{"match":";"}]},"rule-functor":{"begin":"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)\\s*\\(","end":"\\)","patterns":[{"include":"#specializer"},{"name":"punctuation.separator.sequence.list","match":","},{"include":"#term"}],"beginCaptures":{"1":{"name":"support.function.rule"}}},"rule-type":{"name":"meta.rule-type","begin":"\\btype\\b","end":";","patterns":[{"include":"#rule-functor"}],"beginCaptures":{"0":{"name":"keyword.other.type-decl"}}},"specializer":{"match":"[a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*\\s*:\\s*([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)","captures":{"1":{"name":"entity.name.type.resource"}}},"string":{"name":"string.quoted.double","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape","match":"\\\\."}]},"term":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#number"},{"include":"#keyword"},{"include":"#operator"},{"include":"#boolean"},{"include":"#object-literal"},{"name":"meta.bracket.list","begin":"\\[","end":"\\]","patterns":[{"include":"#term"},{"name":"punctuation.separator.sequence.list","match":","}]},{"name":"meta.bracket.dict","begin":"\\{","end":"\\}","patterns":[{"include":"#term"},{"name":"punctuation.separator.sequence.dict","match":","}]},{"name":"meta.parens","begin":"\\(","end":"\\)","patterns":[{"include":"#term"}]}]},"test-block":{"name":"meta.test-block","begin":"(test)\\s+(\"[^\"]*\")\\s*\\{","end":"\\}","patterns":[{"name":"meta.test-setup","begin":"(setup)\\s*\\{","end":"\\}","patterns":[{"include":"#rule"},{"include":"#comment"},{"include":"#fixture"}],"beginCaptures":{"1":{"name":"keyword.control"}}},{"include":"#rule"},{"name":"keyword.other","match":"\\b(assert|assert_not)\\b"},{"include":"#comment"},{"name":"meta.iff-rule","patterns":[{"include":"#rule-functor"},{"begin":"\\biff\\b","end":";","patterns":[{"include":"#term"}],"beginCaptures":{"0":{"name":"keyword.control"}}},{"match":";"}]}],"beginCaptures":{"1":{"name":"keyword.control"},"2":{"name":"string.quoted.double"}}}}}
@@ -1 +1 @@
1
- {"name":"Prisma","scopeName":"source.prisma","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#model_block_definition"},{"include":"#config_block_definition"},{"include":"#enum_block_definition"},{"include":"#type_definition"}],"repository":{"array":{"name":"source.prisma.array","begin":"\\[","end":"\\]","patterns":[{"include":"#value"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.prisma"}}},"assignment":{"patterns":[{"begin":"^\\s*(\\w+)\\s*(=)\\s*","end":"\\n","patterns":[{"include":"#value"},{"include":"#double_comment_inline"}],"beginCaptures":{"1":{"name":"variable.other.assignment.prisma"},"2":{"name":"keyword.operator.terraform"}}}]},"attribute":{"name":"source.prisma.attribute","match":"(@@?[\\w\\.]+)","captures":{"1":{"name":"entity.name.function.attribute.prisma"}}},"attribute_with_arguments":{"name":"source.prisma.attribute.with_arguments","begin":"(@@?[\\w\\.]+)(\\()","end":"\\)","patterns":[{"include":"#named_argument"},{"include":"#value"}],"beginCaptures":{"1":{"name":"entity.name.function.attribute.prisma"},"2":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}}},"boolean":{"name":"constant.language.boolean.prisma","match":"\\b(true|false)\\b"},"config_block_definition":{"name":"source.prisma.embedded.source","begin":"^\\s*(generator|datasource)\\s+([A-Za-z][\\w]*)\\s+({)","end":"\\s*\\}","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#assignment"}],"beginCaptures":{"1":{"name":"storage.type.config.prisma"},"2":{"name":"entity.name.type.config.prisma"},"3":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.prisma"}}},"double_comment":{"name":"comment.prisma","begin":"//","end":"$\\n?"},"double_comment_inline":{"name":"comment.prisma","match":"//[^\\n]*"},"double_quoted_string":{"name":"unnamed","begin":"\"","end":"\"","patterns":[{"include":"#string_interpolation"},{"name":"string.quoted.double.prisma","match":"([\\w\\-\\/\\._\\\\%@:\\?=]+)"}],"beginCaptures":{"0":{"name":"string.quoted.double.start.prisma"}},"endCaptures":{"0":{"name":"string.quoted.double.end.prisma"}}},"enum_block_definition":{"name":"source.prisma.embedded.source","begin":"^\\s*(enum)\\s+([A-Za-z][\\w]*)\\s+({)","end":"\\s*\\}","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#enum_value_definition"}],"beginCaptures":{"1":{"name":"storage.type.enum.prisma"},"2":{"name":"entity.name.type.enum.prisma"},"3":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}}},"enum_value_definition":{"patterns":[{"match":"^\\s*(\\w+)\\s*","captures":{"1":{"name":"variable.other.assignment.prisma"}}},{"include":"#attribute_with_arguments"},{"include":"#attribute"}]},"field_definition":{"name":"scalar.field","patterns":[{"match":"^\\s*(\\w+)(\\s*:)?\\s+((?!(?:Int|BigInt|String|DateTime|Bytes|Decimal|Float|Json|Boolean)\\b)\\b\\w+)?(Int|BigInt|String|DateTime|Bytes|Decimal|Float|Json|Boolean)?(\\[\\])?(\\?)?(\\!)?","captures":{"1":{"name":"variable.other.assignment.prisma"},"2":{"name":"invalid.illegal.colon.prisma"},"3":{"name":"variable.language.relations.prisma"},"4":{"name":"support.type.primitive.prisma"},"5":{"name":"keyword.operator.list_type.prisma"},"6":{"name":"keyword.operator.optional_type.prisma"},"7":{"name":"invalid.illegal.required_type.prisma"}}},{"include":"#attribute_with_arguments"},{"include":"#attribute"}]},"functional":{"name":"source.prisma.functional","begin":"(\\w+)(\\()","end":"\\)","patterns":[{"include":"#value"}],"beginCaptures":{"1":{"name":"support.function.functional.prisma"},"2":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}}},"identifier":{"patterns":[{"name":"support.constant.constant.prisma","match":"\\b(\\w)+\\b"}]},"literal":{"name":"source.prisma.literal","patterns":[{"include":"#boolean"},{"include":"#number"},{"include":"#double_quoted_string"},{"include":"#identifier"}]},"map_key":{"name":"source.prisma.key","patterns":[{"match":"(\\w+)\\s*(:)\\s*","captures":{"1":{"name":"variable.parameter.key.prisma"},"2":{"name":"punctuation.definition.separator.key-value.prisma"}}}]},"model_block_definition":{"name":"source.prisma.embedded.source","begin":"^\\s*(model|type|view)\\s+([A-Za-z][\\w]*)\\s*({)","end":"\\s*\\}","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#field_definition"}],"beginCaptures":{"1":{"name":"storage.type.model.prisma"},"2":{"name":"entity.name.type.model.prisma"},"3":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}}},"named_argument":{"name":"source.prisma.named_argument","patterns":[{"include":"#map_key"},{"include":"#value"}]},"number":{"name":"constant.numeric.prisma","match":"((0(x|X)[0-9a-fA-F]*)|(\\+|-)?\\b(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)([LlFfUuDdg]|UL|ul)?\\b"},"string_interpolation":{"patterns":[{"name":"source.tag.embedded.source.prisma","begin":"\\$\\{","end":"\\s*\\}","patterns":[{"include":"#value"}],"beginCaptures":{"0":{"name":"keyword.control.interpolation.start.prisma"}},"endCaptures":{"0":{"name":"keyword.control.interpolation.end.prisma"}}}]},"triple_comment":{"name":"comment.prisma","begin":"///","end":"$\\n?"},"type_definition":{"patterns":[{"match":"^\\s*(type)\\s+(\\w+)\\s*=\\s*(\\w+)","captures":{"1":{"name":"storage.type.type.prisma"},"2":{"name":"entity.name.type.type.prisma"},"3":{"name":"support.type.primitive.prisma"}}},{"include":"#attribute_with_arguments"},{"include":"#attribute"}]},"value":{"name":"source.prisma.value","patterns":[{"include":"#array"},{"include":"#functional"},{"include":"#literal"}]}}}
1
+ {"name":"Prisma","scopeName":"source.prisma","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#multi_line_comment"},{"include":"#model_block_definition"},{"include":"#config_block_definition"},{"include":"#enum_block_definition"},{"include":"#type_definition"}],"repository":{"array":{"name":"source.prisma.array","begin":"\\[","end":"\\]","patterns":[{"include":"#value"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.prisma"}}},"assignment":{"patterns":[{"begin":"^\\s*(\\w+)\\s*(=)\\s*","end":"\\n","patterns":[{"include":"#value"},{"include":"#double_comment_inline"}],"beginCaptures":{"1":{"name":"variable.other.assignment.prisma"},"2":{"name":"keyword.operator.terraform"}}}]},"attribute":{"name":"source.prisma.attribute","match":"(@@?[\\w\\.]+)","captures":{"1":{"name":"entity.name.function.attribute.prisma"}}},"attribute_with_arguments":{"name":"source.prisma.attribute.with_arguments","begin":"(@@?[\\w\\.]+)(\\()","end":"\\)","patterns":[{"include":"#named_argument"},{"include":"#value"}],"beginCaptures":{"1":{"name":"entity.name.function.attribute.prisma"},"2":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}}},"boolean":{"name":"constant.language.boolean.prisma","match":"\\b(true|false)\\b"},"config_block_definition":{"name":"source.prisma.embedded.source","begin":"^\\s*(generator|datasource)\\s+([A-Za-z][\\w]*)\\s+({)","end":"\\s*\\}","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#multi_line_comment"},{"include":"#assignment"}],"beginCaptures":{"1":{"name":"storage.type.config.prisma"},"2":{"name":"entity.name.type.config.prisma"},"3":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.prisma"}}},"double_comment":{"name":"comment.prisma","begin":"//","end":"$\\n?"},"double_comment_inline":{"name":"comment.prisma","match":"//[^\\n]*"},"double_quoted_string":{"name":"unnamed","begin":"\"","end":"\"","patterns":[{"include":"#string_interpolation"},{"name":"string.quoted.double.prisma","match":"([\\w\\-\\/\\._\\\\%@:\\?=]+)"}],"beginCaptures":{"0":{"name":"string.quoted.double.start.prisma"}},"endCaptures":{"0":{"name":"string.quoted.double.end.prisma"}}},"enum_block_definition":{"name":"source.prisma.embedded.source","begin":"^\\s*(enum)\\s+([A-Za-z][\\w]*)\\s+({)","end":"\\s*\\}","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#multi_line_comment"},{"include":"#enum_value_definition"}],"beginCaptures":{"1":{"name":"storage.type.enum.prisma"},"2":{"name":"entity.name.type.enum.prisma"},"3":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}}},"enum_value_definition":{"patterns":[{"match":"^\\s*(\\w+)\\s*","captures":{"1":{"name":"variable.other.assignment.prisma"}}},{"include":"#attribute_with_arguments"},{"include":"#attribute"}]},"field_definition":{"name":"scalar.field","patterns":[{"match":"^\\s*(\\w+)(\\s*:)?\\s+((?!(?:Int|BigInt|String|DateTime|Bytes|Decimal|Float|Json|Boolean)\\b)\\b\\w+)?(Int|BigInt|String|DateTime|Bytes|Decimal|Float|Json|Boolean)?(\\[\\])?(\\?)?(\\!)?","captures":{"1":{"name":"variable.other.assignment.prisma"},"2":{"name":"invalid.illegal.colon.prisma"},"3":{"name":"variable.language.relations.prisma"},"4":{"name":"support.type.primitive.prisma"},"5":{"name":"keyword.operator.list_type.prisma"},"6":{"name":"keyword.operator.optional_type.prisma"},"7":{"name":"invalid.illegal.required_type.prisma"}}},{"include":"#attribute_with_arguments"},{"include":"#attribute"}]},"functional":{"name":"source.prisma.functional","begin":"(\\w+)(\\()","end":"\\)","patterns":[{"include":"#value"}],"beginCaptures":{"1":{"name":"support.function.functional.prisma"},"2":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}}},"identifier":{"patterns":[{"name":"support.constant.constant.prisma","match":"\\b(\\w)+\\b"}]},"literal":{"name":"source.prisma.literal","patterns":[{"include":"#boolean"},{"include":"#number"},{"include":"#double_quoted_string"},{"include":"#identifier"}]},"map_key":{"name":"source.prisma.key","patterns":[{"match":"(\\w+)\\s*(:)\\s*","captures":{"1":{"name":"variable.parameter.key.prisma"},"2":{"name":"punctuation.definition.separator.key-value.prisma"}}}]},"model_block_definition":{"name":"source.prisma.embedded.source","begin":"^\\s*(model|type|view)\\s+([A-Za-z][\\w]*)\\s*({)","end":"\\s*\\}","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#multi_line_comment"},{"include":"#field_definition"}],"beginCaptures":{"1":{"name":"storage.type.model.prisma"},"2":{"name":"entity.name.type.model.prisma"},"3":{"name":"punctuation.definition.tag.prisma"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}}},"multi_line_comment":{"name":"comment.prisma","begin":"/\\*","end":"\\*/"},"named_argument":{"name":"source.prisma.named_argument","patterns":[{"include":"#map_key"},{"include":"#value"}]},"number":{"name":"constant.numeric.prisma","match":"((0(x|X)[0-9a-fA-F]*)|(\\+|-)?\\b(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)([LlFfUuDdg]|UL|ul)?\\b"},"string_interpolation":{"patterns":[{"name":"source.tag.embedded.source.prisma","begin":"\\$\\{","end":"\\s*\\}","patterns":[{"include":"#value"}],"beginCaptures":{"0":{"name":"keyword.control.interpolation.start.prisma"}},"endCaptures":{"0":{"name":"keyword.control.interpolation.end.prisma"}}}]},"triple_comment":{"name":"comment.prisma","begin":"///","end":"$\\n?"},"type_definition":{"patterns":[{"match":"^\\s*(type)\\s+(\\w+)\\s*=\\s*(\\w+)","captures":{"1":{"name":"storage.type.type.prisma"},"2":{"name":"entity.name.type.type.prisma"},"3":{"name":"support.type.primitive.prisma"}}},{"include":"#attribute_with_arguments"},{"include":"#attribute"}]},"value":{"name":"source.prisma.value","patterns":[{"include":"#array"},{"include":"#functional"},{"include":"#literal"}]}}}
@@ -1 +1 @@
1
- {"name":"PureScript","scopeName":"source.purescript","patterns":[{"name":"keyword.operator.function.infix.purescript","match":"(`)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(`)","captures":{"1":{"name":"punctuation.definition.entity.purescript"},"2":{"name":"punctuation.definition.entity.purescript"}}},{"name":"meta.declaration.module.purescript","begin":"^\\s*\\b(module)(?!')\\b","end":"(where)","patterns":[{"include":"#comments"},{"include":"#module_name"},{"include":"#module_exports"},{"name":"invalid.purescript","match":"[a-z]+"}],"beginCaptures":{"1":{"name":"keyword.other.purescript"}},"endCaptures":{"1":{"name":"keyword.other.purescript"}}},{"name":"meta.declaration.typeclass.purescript","begin":"^\\s*\\b(class)(?!')\\b","end":"\\b(where)\\b|$","patterns":[{"include":"#type_signature"}],"beginCaptures":{"1":{"name":"storage.type.class.purescript"}},"endCaptures":{"1":{"name":"keyword.other.purescript"}}},{"name":"meta.declaration.instance.purescript","contentName":"meta.type-signature.purescript","begin":"^\\s*\\b(else\\s+)?(derive\\s+)?(newtype\\s+)?(instance)(?!')\\b","end":"\\b(where)\\b|$","patterns":[{"include":"#type_signature"}],"beginCaptures":{"1":{"name":"keyword.other.purescript"},"2":{"name":"keyword.other.purescript"},"3":{"name":"keyword.other.purescript"},"4":{"name":"keyword.other.purescript"}},"endCaptures":{"1":{"name":"keyword.other.purescript"}}},{"name":"meta.foreign.data.purescript","contentName":"meta.kind-signature.purescript","begin":"^(\\s*)(foreign)\\s+(import)\\s+(data)\\s+([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"include":"#double_colon"},{"include":"#kind_signature"}],"beginCaptures":{"2":{"name":"keyword.other.purescript"},"3":{"name":"keyword.other.purescript"},"4":{"name":"keyword.other.purescript"},"5":{"name":"entity.name.type.purescript"},"6":{"name":"keyword.other.double-colon.purescript"}}},{"name":"meta.foreign.purescript","contentName":"meta.type-signature.purescript","begin":"^(\\s*)(foreign)\\s+(import)\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"include":"#double_colon"},{"include":"#type_signature"}],"beginCaptures":{"2":{"name":"keyword.other.purescript"},"3":{"name":"keyword.other.purescript"},"4":{"name":"entity.name.function.purescript"}}},{"name":"meta.import.purescript","begin":"^\\s*\\b(import)(?!')\\b","end":"($|(?=--))","patterns":[{"include":"#module_name"},{"include":"#module_exports"},{"match":"\\b(as|hiding)\\b","captures":{"1":{"name":"keyword.other.purescript"}}}],"beginCaptures":{"1":{"name":"keyword.other.purescript"}}},{"name":"meta.declaration.type.data.purescript","begin":"^(\\s)*(data|newtype)\\s+(.+?)\\s*(?=\\=|$)","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"include":"#comments"},{"match":"=","captures":{"0":{"name":"keyword.operator.assignment.purescript"}}},{"match":"(?:(?:\\b([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s+)(?:(?\u003cctorArgs\u003e(?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?:[\\w()'→⇒\\[\\],]|-\u003e|=\u003e)+\\s*)+))(?:\\s*(?:\\s+)\\s*\\g\u003cctorArgs\u003e)?)?))","captures":{"1":{"patterns":[{"include":"#data_ctor"}]},"2":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}}},{"match":"\\|","captures":{"0":{"name":"punctuation.separator.pipe.purescript"}}},{"include":"#record_types"}],"beginCaptures":{"2":{"name":"storage.type.data.purescript"},"3":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}}},{"name":"meta.declaration.type.type.purescript","contentName":"meta.type-signature.purescript","begin":"^(\\s)*(type)\\s+(.+?)\\s*(?=\\=|$)","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"match":"=","captures":{"0":{"name":"keyword.operator.assignment.purescript"}}},{"include":"#type_signature"},{"include":"#record_types"},{"include":"#comments"}],"beginCaptures":{"2":{"name":"storage.type.data.purescript"},"3":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}}},{"name":"keyword.other.purescript","match":"^\\s*\\b(derive|where|data|type|newtype|infix[lr]?|foreign(\\s+import)?(\\s+data)?)(?!')\\b"},{"name":"entity.name.function.typed-hole.purescript","match":"\\?(?:[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)"},{"name":"storage.type.purescript","match":"^\\s*\\b(data|type|newtype)(?!')\\b"},{"name":"keyword.control.purescript","match":"\\b(do|ado|if|then|else|case|of|let|in)(?!('|\\s*(:|=)))\\b"},{"name":"constant.numeric.hex.purescript","match":"\\b(?\u003c!\\$)0(x|X)[0-9a-fA-F]+\\b(?!\\$)"},{"name":"constant.numeric.decimal.purescript","match":"(?x)\n(?\u003c!\\$)(?:\n (?:\\b[0-9]+(\\.)[0-9]+[eE][+-]?[0-9]+\\b)| # 1.1E+3\n (?:\\b[0-9]+[eE][+-]?[0-9]+\\b)| # 1E+3\n (?:\\b[0-9]+(\\.)[0-9]+\\b)| # 1.1\n (?:\\b[0-9]+\\b(?!\\.)) # 1\n)(?!\\$)","captures":{"0":{"name":"constant.numeric.decimal.purescript"},"1":{"name":"meta.delimiter.decimal.period.purescript"},"2":{"name":"meta.delimiter.decimal.period.purescript"},"3":{"name":"meta.delimiter.decimal.period.purescript"},"4":{"name":"meta.delimiter.decimal.period.purescript"},"5":{"name":"meta.delimiter.decimal.period.purescript"},"6":{"name":"meta.delimiter.decimal.period.purescript"}}},{"name":"constant.language.boolean.purescript","match":"\\b(true|false)\\b"},{"name":"constant.numeric.purescript","match":"\\b(([0-9]+_?)*[0-9]+|0([xX][0-9a-fA-F]+|[oO][0-7]+))\\b"},{"name":"string.quoted.triple.purescript","begin":"\"\"\"","end":"\"\"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.purescript"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.purescript"}}},{"name":"string.quoted.double.purescript","begin":"\"","end":"\"","patterns":[{"include":"#characters"},{"begin":"\\\\\\s","end":"\\\\","patterns":[{"name":"invalid.illegal.character-not-allowed-here.purescript","match":"\\S+"}],"beginCaptures":{"0":{"name":"markup.other.escape.newline.begin.purescript"}},"endCaptures":{"0":{"name":"markup.other.escape.newline.end.purescript"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.purescript"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.purescript"}}},{"name":"markup.other.escape.newline.purescript","match":"\\\\$"},{"name":"string.quoted.single.purescript","match":"(')((?:[ -\\[\\]-~]|(\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\"'\\\u0026]))|(\\\\o[0-7]+)|(\\\\x[0-9A-Fa-f]+)|(\\^[A-Z@\\[\\]\\\\\\^_])))(')","captures":{"1":{"name":"punctuation.definition.string.begin.purescript"},"2":{"patterns":[{"include":"#characters"}]},"7":{"name":"punctuation.definition.string.end.purescript"}}},{"include":"#function_type_declaration"},{"match":"\\((?\u003cparen\u003e(?:[^()]|\\(\\g\u003cparen\u003e\\))*)(::|∷)(?\u003cparen2\u003e(?:[^()]|\\(\\g\u003cparen2\u003e\\))*)\\)","captures":{"1":{"patterns":[{"include":"$self"}]},"2":{"name":"keyword.other.double-colon.purescript"},"3":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}}},{"begin":"^(\\s*)(?:(::|∷))","end":"^(?!\\1[ \\t]*|[ \\t]*$)","patterns":[{"include":"#type_signature"}],"beginCaptures":{"2":{"name":"keyword.other.double-colon.purescript"}}},{"include":"#data_ctor"},{"include":"#comments"},{"include":"#infix_op"},{"name":"keyword.other.arrow.purescript","match":"\\\u003c-|-\\\u003e"},{"name":"keyword.operator.purescript","match":"[\\p{S}\\p{P}\u0026\u0026[^(),;\\[\\]`{}_\"']]+"},{"name":"punctuation.separator.comma.purescript","match":","}],"repository":{"block_comment":{"patterns":[{"name":"comment.block.documentation.purescript","begin":"\\{-\\s*\\|","end":"-\\}","patterns":[{"include":"#block_comment"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.documentation.purescript"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.documentation.purescript"}},"applyEndPatternLast":true},{"name":"comment.block.purescript","begin":"\\{-","end":"-\\}","patterns":[{"include":"#block_comment"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.purescript"}},"applyEndPatternLast":true}]},"characters":{"patterns":[{"match":"(?:[ -\\[\\]-~]|(\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\"'\\\u0026]))|(\\\\o[0-7]+)|(\\\\x[0-9A-Fa-f]+)|(\\^[A-Z@\\[\\]\\\\\\^_]))","captures":{"1":{"name":"constant.character.escape.purescript"},"2":{"name":"constant.character.escape.octal.purescript"},"3":{"name":"constant.character.escape.hexadecimal.purescript"},"4":{"name":"constant.character.escape.control.purescript"}}}]},"class_constraint":{"patterns":[{"name":"meta.class-constraint.purescript","match":"(?:(?:([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s+)(?:(?\u003cclassConstraint\u003e(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)(?:\\s*(?:\\s+)\\s*\\g\u003cclassConstraint\u003e)?)))","captures":{"1":{"patterns":[{"name":"entity.name.type.purescript","match":"\\b[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*"}]},"2":{"patterns":[{"include":"#type_name"},{"include":"#generic_type"}]}}}]},"comments":{"patterns":[{"begin":"(^[ \\t]+)?(?=--+\\s+\\|)","end":"(?!\\G)","patterns":[{"name":"comment.line.double-dash.documentation.purescript","begin":"(--+)\\s+(\\|)","end":"\\n","beginCaptures":{"1":{"name":"punctuation.definition.comment.purescript"},"2":{"name":"punctuation.definition.comment.documentation.purescript"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.purescript"}}},{"begin":"(^[ \\t]+)?(?=--+(?![\\p{S}\\p{P}\u0026\u0026[^(),;\\[\\]`{}_\"']]))","end":"(?!\\G)","patterns":[{"name":"comment.line.double-dash.purescript","begin":"--","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.purescript"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.purescript"}}},{"include":"#block_comment"}]},"data_ctor":{"patterns":[{"name":"entity.name.tag.purescript","match":"\\b[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*"}]},"double_colon":{"patterns":[{"name":"keyword.other.double-colon.purescript","match":"(?:::|∷)"}]},"function_type_declaration":{"patterns":[{"name":"meta.function.type-declaration.purescript","contentName":"meta.type-signature.purescript","begin":"^(\\s*)([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\s*(?:(::|∷)(?!.*\u003c-))","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"include":"#double_colon"},{"include":"#type_signature"}],"beginCaptures":{"2":{"name":"entity.name.function.purescript"},"3":{"name":"keyword.other.double-colon.purescript"}}}]},"generic_type":{"patterns":[{"name":"variable.other.generic-type.purescript","match":"\\b(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*"}]},"infix_op":{"patterns":[{"name":"entity.name.function.infix.purescript","match":"(?:\\((?!--+\\))[\\p{S}\\p{P}\u0026\u0026[^(),;\\[\\]`{}_\"']]+\\))"}]},"kind_signature":{"patterns":[{"name":"keyword.other.star.purescript","match":"\\*"},{"name":"keyword.other.exclaimation-point.purescript","match":"!"},{"name":"keyword.other.pound-sign.purescript","match":"#"},{"name":"keyword.other.arrow.purescript","match":"-\u003e|→"}]},"module_exports":{"patterns":[{"name":"meta.declaration.exports.purescript","begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"name":"entity.name.function.purescript","match":"\\b(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*"},{"include":"#type_name"},{"name":"punctuation.separator.comma.purescript","match":","},{"include":"#infix_op"},{"name":"meta.other.constructor-list.purescript","match":"\\(.*?\\)"}]}]},"module_name":{"patterns":[{"name":"support.other.module.purescript","match":"(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)*[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.?"}]},"record_field_declaration":{"patterns":[{"name":"meta.record-field.type-declaration.purescript","contentName":"meta.type-signature.purescript","begin":"([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\s*(::|∷)","end":"(?=([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\s*(::|∷)|})","patterns":[{"include":"#type_signature"},{"include":"#record_types"}],"beginCaptures":{"1":{"patterns":[{"name":"entity.other.attribute-name.purescript","match":"(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*"}]},"2":{"name":"keyword.other.double-colon.purescript"}}}]},"record_types":{"patterns":[{"name":"meta.type.record.purescript","begin":"\\{","end":"\\}","patterns":[{"name":"punctuation.separator.comma.purescript","match":","},{"include":"#record_field_declaration"},{"include":"#comments"}],"beginCaptures":{"0":{"name":"keyword.operator.type.record.begin.purescript"}},"endCaptures":{"0":{"name":"keyword.operator.type.record.end.purescript"}}}]},"type_name":{"patterns":[{"name":"entity.name.type.purescript","match":"\\b[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*"}]},"type_signature":{"patterns":[{"name":"meta.class-constraints.purescript","match":"(?:(?:\\()(?:(?\u003cclassConstraints\u003e(?:(?:(?:([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s+)(?:(?\u003cclassConstraint\u003e(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)(?:\\s*(?:\\s+)\\s*\\g\u003cclassConstraint\u003e)?))))(?:\\s*(?:,)\\s*\\g\u003cclassConstraints\u003e)?))(?:\\))(?:\\s*(=\u003e|\u003c=|⇐|⇒)))","captures":{"1":{"patterns":[{"include":"#class_constraint"}]},"4":{"name":"keyword.other.big-arrow.purescript"}}},{"name":"meta.class-constraints.purescript","match":"((?:(?:([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s+)(?:(?\u003cclassConstraint\u003e(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)(?:\\s*(?:\\s+)\\s*\\g\u003cclassConstraint\u003e)?))))\\s*(=\u003e|\u003c=|⇐|⇒)","captures":{"1":{"patterns":[{"include":"#class_constraint"}]},"4":{"name":"keyword.other.big-arrow.purescript"}}},{"name":"keyword.other.arrow.purescript","match":"-\u003e|→"},{"name":"keyword.other.big-arrow.purescript","match":"=\u003e|⇒"},{"name":"keyword.other.big-arrow-left.purescript","match":"\u003c=|⇐"},{"name":"keyword.other.forall.purescript","match":"forall|∀"},{"include":"#generic_type"},{"include":"#type_name"},{"include":"#comments"}]}}}
1
+ {"name":"PureScript","scopeName":"source.purescript","patterns":[{"include":"#module_declaration"},{"include":"#module_import"},{"include":"#type_synonym_declaration"},{"include":"#data_type_declaration"},{"include":"#typeclass_declaration"},{"include":"#instance_declaration"},{"include":"#derive_declaration"},{"include":"#infix_op_declaration"},{"include":"#foreign_import_data"},{"include":"#foreign_import"},{"include":"#function_type_declaration"},{"include":"#function_type_declaration_arrow_first"},{"include":"#typed_hole"},{"include":"#keywords_orphan"},{"include":"#control_keywords"},{"include":"#function_infix"},{"include":"#data_ctor"},{"include":"#infix_op"},{"include":"#constants_numeric_decimal"},{"include":"#constant_numeric"},{"include":"#constant_boolean"},{"include":"#string_triple_quoted"},{"include":"#string_single_quoted"},{"include":"#string_double_quoted"},{"include":"#markup_newline"},{"include":"#string_double_colon_parens"},{"include":"#double_colon_parens"},{"include":"#double_colon_inlined"},{"include":"#comments"},{"name":"keyword.other.arrow.purescript","match":"\\\u003c-|-\\\u003e"},{"name":"keyword.operator.purescript","match":"[\\p{S}\\p{P}\u0026\u0026[^(),;\\[\\]`{}_\"']]+"},{"name":"punctuation.separator.comma.purescript","match":","}],"repository":{"block_comment":{"patterns":[{"name":"comment.block.documentation.purescript","begin":"\\{-\\s*\\|","end":"-\\}","patterns":[{"include":"#block_comment"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.documentation.purescript"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.documentation.purescript"}},"applyEndPatternLast":true},{"name":"comment.block.purescript","begin":"\\{-","end":"-\\}","patterns":[{"include":"#block_comment"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.purescript"}},"applyEndPatternLast":true}]},"characters":{"patterns":[{"match":"(?:[ -\\[\\]-~]|(\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\"'\\\u0026]))|(\\\\o[0-7]+)|(\\\\x[0-9A-Fa-f]+)|(\\^[A-Z@\\[\\]\\\\\\^_]))","captures":{"1":{"name":"constant.character.escape.purescript"},"2":{"name":"constant.character.escape.octal.purescript"},"3":{"name":"constant.character.escape.hexadecimal.purescript"},"4":{"name":"constant.character.escape.control.purescript"}}}]},"class_constraint":{"patterns":[{"name":"meta.class-constraint.purescript","match":"(?:(?:([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s+)(?:(?\u003cclassConstraint\u003e(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)(?:\\s*(?:\\s+)\\s*(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))*)))","captures":{"1":{"patterns":[{"name":"entity.name.type.purescript","match":"\\b[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*"}]},"2":{"patterns":[{"include":"#type_name"},{"include":"#generic_type"}]}}}]},"comments":{"patterns":[{"begin":"(^[ \\t]+)?(?=--+)","end":"(?!\\G)","patterns":[{"name":"comment.line.double-dash.purescript","begin":"--","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.purescript"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.purescript"}}},{"include":"#block_comment"}]},"constant_boolean":{"patterns":[{"name":"constant.language.boolean.purescript","match":"\\b(true|false)(?!')\\b"}]},"constant_numeric":{"patterns":[{"name":"constant.numeric.purescript","match":"\\b(([0-9]+_?)*[0-9]+|0([xX][0-9a-fA-F]+|[oO][0-7]+))\\b"}]},"constants_numeric_decimal":{"patterns":[{"name":"constant.numeric.decimal.purescript","match":"(?x)\n(?\u003c!\\$)(?:\n (?:\\b[0-9]+(\\.)[0-9]+[eE][+-]?[0-9]+\\b)| # 1.1E+3\n (?:\\b[0-9]+[eE][+-]?[0-9]+\\b)| # 1E+3\n (?:\\b[0-9]+(\\.)[0-9]+\\b)| # 1.1\n (?:\\b[0-9]+\\b(?!\\.)) # 1\n)(?!\\$)","captures":{"0":{"name":"constant.numeric.decimal.purescript"},"1":{"name":"meta.delimiter.decimal.period.purescript"},"2":{"name":"meta.delimiter.decimal.period.purescript"},"3":{"name":"meta.delimiter.decimal.period.purescript"},"4":{"name":"meta.delimiter.decimal.period.purescript"},"5":{"name":"meta.delimiter.decimal.period.purescript"},"6":{"name":"meta.delimiter.decimal.period.purescript"}}}]},"control_keywords":{"patterns":[{"name":"keyword.control.purescript","match":"\\b(do|ado|if|then|else|case|of|let|in)(?!('|\\s*(:|=)))\\b"}]},"data_ctor":{"patterns":[{"name":"entity.name.tag.purescript","match":"\\b[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*"}]},"data_type_declaration":{"patterns":[{"name":"meta.declaration.type.data.purescript","begin":"^(\\s)*(data|newtype)\\s+(.+?)\\s*(?=\\=|$)","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"include":"#comments"},{"captures":{"2":{"patterns":[{"include":"#data_ctor"}]}}},{"match":"\\|","captures":{"0":{"name":"keyword.operator.pipe.purescript"}}},{"include":"#record_types"},{"include":"#type_signature"}],"beginCaptures":{"2":{"name":"storage.type.data.purescript"},"3":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}}}]},"derive_declaration":{"patterns":[{"name":"meta.declaration.derive.purescript","contentName":"meta.type-signature.purescript","begin":"^\\s*\\b(derive)(\\s+newtype)?(\\s+instance)?(?!')\\b","end":"^(?=\\S)","patterns":[{"include":"#type_signature"}],"beginCaptures":{"1":{"name":"keyword.other.purescript"},"2":{"name":"keyword.other.purescript"},"3":{"name":"keyword.other.purescript"},"4":{"name":"keyword.other.purescript"}},"endCaptures":{"1":{"name":"keyword.other.purescript"}}}]},"double_colon":{"patterns":[{"name":"keyword.other.double-colon.purescript","match":"(?:::|∷)"}]},"double_colon_inlined":{"patterns":[{"patterns":[{"match":"((?:::|∷))(.*?)(?=\u003c-| \"\"\")","captures":{"1":{"name":"keyword.other.double-colon.purescript"},"2":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}}}]},{"patterns":[{"begin":"((?:::|∷))","end":"(?=^(\\s|\\S))","patterns":[{"include":"#type_signature"}],"beginCaptures":{"1":{"name":"keyword.other.double-colon.purescript"}}}]}]},"double_colon_orphan":{"patterns":[{"begin":"(\\s*)(?:(::|∷))(\\s*)$","end":"^(?!\\1[ \\t]*|[ \\t]*$)","patterns":[{"include":"#type_signature"}],"beginCaptures":{"2":{"name":"keyword.other.double-colon.purescript"}}}]},"double_colon_parens":{"patterns":[{"match":"\\((?\u003cparen\u003e(?:[^()]|\\(\\g\u003cparen\u003e\\))*)(::|∷)(?\u003cparen2\u003e(?:[^()}]|\\(\\g\u003cparen2\u003e\\))*)\\)","captures":{"1":{"patterns":[{"include":"$self"}]},"2":{"name":"keyword.other.double-colon.purescript"},"3":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}}}]},"foreign_import":{"patterns":[{"name":"meta.foreign.purescript","contentName":"meta.type-signature.purescript","begin":"^(\\s*)(foreign)\\s+(import)\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"include":"#double_colon"},{"include":"#type_signature"},{"include":"#record_types"}],"beginCaptures":{"2":{"name":"keyword.other.purescript"},"3":{"name":"keyword.other.purescript"},"4":{"name":"entity.name.function.purescript"}}}]},"foreign_import_data":{"patterns":[{"name":"meta.foreign.data.purescript","contentName":"meta.kind-signature.purescript","begin":"^(\\s*)(foreign)\\s+(import)\\s+(data)\\s(?:\\s+([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\s*((?:::|∷)))?","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"include":"#comments"},{"include":"#type_signature"},{"include":"#record_types"}],"beginCaptures":{"2":{"name":"keyword.other.purescript"},"3":{"name":"keyword.other.purescript"},"4":{"name":"keyword.other.purescript"},"5":{"name":"entity.name.type.purescript"},"6":{"name":"keyword.other.double-colon.purescript"}}}]},"function_infix":{"patterns":[{"name":"keyword.operator.function.infix.purescript","match":"(`)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*.*(`)","captures":{"1":{"name":"punctuation.definition.entity.purescript"},"2":{"name":"punctuation.definition.entity.purescript"}}}]},"function_type_declaration":{"patterns":[{"name":"meta.function.type-declaration.purescript","contentName":"meta.type-signature.purescript","begin":"^(\\s*)([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\s*(?:(::|∷)(?!.*\u003c-))","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"include":"#double_colon"},{"include":"#type_signature"},{"include":"#record_types"},{"include":"#row_types"}],"beginCaptures":{"2":{"name":"entity.name.function.purescript"},"3":{"name":"keyword.other.double-colon.purescript"}}}]},"function_type_declaration_arrow_first":{"patterns":[{"name":"meta.function.type-declaration.purescript","contentName":"meta.type-signature.purescript","begin":"^(\\s*)(?:\\s(::|∷)(?!.*\u003c-))","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"include":"#double_colon"},{"include":"#type_signature"},{"include":"#record_types"},{"include":"#row_types"}],"beginCaptures":{"2":{"name":"keyword.other.double-colon.purescript"}}}]},"generic_type":{"patterns":[{"name":"variable.other.generic-type.purescript","match":"\\b(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*"}]},"infix_op":{"patterns":[{"name":"entity.name.function.infix.purescript","match":"(?:\\((?!--+\\))[\\p{S}\\p{P}\u0026\u0026[^(),;\\[\\]`{}_\"']]+\\))"}]},"infix_op_declaration":{"patterns":[{"name":"meta.infix.declaration.purescript","begin":"^\\b(infix[l|r]?)(?!')\\b","end":"($)","patterns":[{"include":"#comments"},{"include":"#data_ctor"},{"name":"constant.numeric.purescript","match":" \\d+ "},{"match":"([\\p{S}\\p{P}\u0026\u0026[^(),;\\[\\]`{}_\"']]+)","captures":{"1":{"name":"keyword.other.purescript"}}},{"match":"\\b(type)\\s+([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\b","captures":{"1":{"name":"keyword.other.purescript"},"2":{"name":"entity.name.type.purescript"}}},{"match":"\\b(as|type)\\b","captures":{"1":{"name":"keyword.other.purescript"}}}],"beginCaptures":{"1":{"name":"keyword.other.purescript"}}}]},"instance_declaration":{"patterns":[{"name":"meta.declaration.instance.purescript","contentName":"meta.type-signature.purescript","begin":"^\\s*\\b(else\\s+)?(newtype\\s+)?(instance)(?!')\\b","end":"(\\bwhere\\b|(?=^\\S))","patterns":[{"include":"#type_signature"}],"beginCaptures":{"1":{"name":"keyword.other.purescript"},"2":{"name":"keyword.other.purescript"},"3":{"name":"keyword.other.purescript"},"4":{"name":"keyword.other.purescript"}},"endCaptures":{"1":{"name":"keyword.other.purescript"}}}]},"keywords_orphan":{"patterns":[{"name":"keyword.other.purescript","match":"^\\s*\\b(derive|where|data|type|newtype|foreign(\\s+import)?(\\s+data)?)(?!')\\b"}]},"kind_signature":{"patterns":[{"name":"keyword.other.star.purescript","match":"\\*"},{"name":"keyword.other.exclaimation-point.purescript","match":"!"},{"name":"keyword.other.pound-sign.purescript","match":"#"},{"name":"keyword.other.arrow.purescript","match":"-\u003e|→"}]},"markup_newline":{"patterns":[{"name":"markup.other.escape.newline.purescript","match":"\\\\$"}]},"module_declaration":{"patterns":[{"name":"meta.declaration.module.purescript","begin":"^\\s*\\b(module)(?!')\\b","end":"(\\bwhere\\b)","patterns":[{"include":"#comments"},{"include":"#module_name"},{"include":"#module_exports"},{"name":"invalid.purescript","match":"[a-z]+"}],"beginCaptures":{"1":{"name":"keyword.other.purescript"}},"endCaptures":{"1":{"name":"keyword.other.purescript"}}}]},"module_exports":{"patterns":[{"name":"meta.declaration.exports.purescript","begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"name":"entity.name.function.purescript","match":"\\b(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*"},{"include":"#type_name"},{"name":"punctuation.separator.comma.purescript","match":","},{"include":"#infix_op"},{"name":"meta.other.constructor-list.purescript","match":"\\(.*?\\)"}]}]},"module_import":{"patterns":[{"name":"meta.import.purescript","begin":"^\\s*\\b(import)(?!')\\b","end":"^(?=\\S)","patterns":[{"include":"#module_name"},{"include":"#string_double_quoted"},{"include":"#comments"},{"include":"#module_exports"},{"match":"\\b(as|hiding)\\b","captures":{"1":{"name":"keyword.other.purescript"}}}],"beginCaptures":{"1":{"name":"keyword.other.purescript"}}}]},"module_name":{"patterns":[{"name":"support.other.module.purescript","match":"(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)*[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.?"}]},"record_field_declaration":{"patterns":[{"name":"meta.record-field.type-declaration.purescript","contentName":"meta.type-signature.purescript","begin":"((?:[ ,])(?:\"(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\")|[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\s*(::|∷)","end":"(?=((?:[ ,])(?:\"(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\")|[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\s*(::|∷)|}| \\)|^(?!\\1[ \\t]|[ \\t]*$))","patterns":[{"include":"#record_types"},{"include":"#type_signature"},{"include":"#comments"}],"beginCaptures":{"1":{"patterns":[{"name":"entity.other.attribute-name.purescript","match":"(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*"},{"name":"string.quoted.double.purescript","match":"\\\"([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\\""}]},"2":{"name":"keyword.other.double-colon.purescript"}}}]},"record_types":{"patterns":[{"name":"meta.type.record.purescript","begin":"\\{(?!-)","end":"\\}","patterns":[{"name":"punctuation.separator.comma.purescript","match":","},{"include":"#comments"},{"include":"#record_field_declaration"},{"include":"#type_signature"}],"beginCaptures":{"0":{"name":"keyword.operator.type.record.begin.purescript"}},"endCaptures":{"0":{"name":"keyword.operator.type.record.end.purescript"}}}]},"row_types":{"patterns":[{"name":"meta.type.row.purescript","begin":"\\((?=\\s*([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|\"[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*\"|\"[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*\")\\s*(::|∷))","end":"(?=^\\S)","patterns":[{"name":"punctuation.separator.comma.purescript","match":","},{"include":"#comments"},{"include":"#record_field_declaration"},{"include":"#type_signature"}]}]},"string_double_colon_parens":{"patterns":[{"match":"\\((.*?)(\"(?:[ -\\[\\]-~]|(\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\"'\\\u0026]))|(\\\\o[0-7]+)|(\\\\x[0-9A-Fa-f]+)|(\\^[A-Z@\\[\\]\\\\\\^_]))*(::|∷)((?:[ -\\[\\]-~]|(\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\"'\\\u0026]))|(\\\\o[0-7]+)|(\\\\x[0-9A-Fa-f]+)|(\\^[A-Z@\\[\\]\\\\\\^_])))*\")","captures":{"1":{"patterns":[{"include":"$self"}]},"2":{"patterns":[{"include":"$self"}]}}}]},"string_double_quoted":{"patterns":[{"name":"string.quoted.double.purescript","begin":"\"","end":"\"","patterns":[{"include":"#characters"},{"begin":"\\\\\\s","end":"\\\\","patterns":[{"name":"invalid.illegal.character-not-allowed-here.purescript","match":"\\S+"}],"beginCaptures":{"0":{"name":"markup.other.escape.newline.begin.purescript"}},"endCaptures":{"0":{"name":"markup.other.escape.newline.end.purescript"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.purescript"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.purescript"}}}]},"string_single_quoted":{"patterns":[{"name":"string.quoted.single.purescript","match":"(')((?:[ -\\[\\]-~]|(\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\"'\\\u0026]))|(\\\\o[0-7]+)|(\\\\x[0-9A-Fa-f]+)|(\\^[A-Z@\\[\\]\\\\\\^_])))(')","captures":{"1":{"name":"punctuation.definition.string.begin.purescript"},"2":{"patterns":[{"include":"#characters"}]},"7":{"name":"punctuation.definition.string.end.purescript"}}}]},"string_triple_quoted":{"patterns":[{"name":"string.quoted.triple.purescript","begin":"\"\"\"","end":"\"\"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.purescript"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.purescript"}}}]},"type_kind_signature":{"patterns":[{"name":"meta.declaration.type.data.signature.purescript","begin":"^(data|newtype)\\s+([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\s*((?:::|∷))","end":"(?=^\\S)","patterns":[{"include":"#type_signature"},{"match":"=","captures":{"0":{"name":"keyword.operator.assignment.purescript"}}},{"match":"(?:(?:\\b([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s+)(?:(?\u003cctorArgs\u003e(?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?:[\\w()'→⇒\\[\\],]|-\u003e|=\u003e)+\\s*)+))(?:\\s*(?:\\s+)\\s*(?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?:[\\w()'→⇒\\[\\],]|-\u003e|=\u003e)+\\s*)+)))*)?))","captures":{"1":{"patterns":[{"include":"#data_ctor"}]},"2":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}}},{"match":"\\|","captures":{"0":{"name":"keyword.operator.pipe.purescript"}}},{"include":"#record_types"}],"beginCaptures":{"1":{"name":"storage.type.data.purescript"},"2":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]},"3":{"name":"keyword.other.double-colon.purescript"}}}]},"type_name":{"patterns":[{"name":"entity.name.type.purescript","match":"\\b[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*"}]},"type_signature":{"patterns":[{"include":"#record_types"},{"name":"meta.class-constraints.purescript","match":"(?:(?:\\()(?:(?\u003cclassConstraints\u003e(?:(?:(?:([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s+)(?:(?\u003cclassConstraint\u003e(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)(?:\\s*(?:\\s+)\\s*(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))*))))(?:\\s*(?:,)\\s*(?:(?:(?:([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s+)(?:(?\u003cclassConstraint\u003e(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)(?:\\s*(?:\\s+)\\s*(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))*)))))*))(?:\\))(?:\\s*(=\u003e|\u003c=|⇐|⇒)))","captures":{"1":{"patterns":[{"include":"#class_constraint"}]},"6":{"name":"keyword.other.big-arrow.purescript"}}},{"name":"meta.class-constraints.purescript","match":"((?:(?:([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s+)(?:(?\u003cclassConstraint\u003e(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)(?:\\s*(?:\\s+)\\s*(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))*))))\\s*(=\u003e|\u003c=|⇐|⇒)","captures":{"1":{"patterns":[{"include":"#class_constraint"}]},"4":{"name":"keyword.other.big-arrow.purescript"}}},{"name":"keyword.other.arrow.purescript","match":"(?\u003c![\\p{S}\\p{P}\u0026\u0026[^(),;\\[\\]`{}_\"']])(-\u003e|→)"},{"name":"keyword.other.big-arrow.purescript","match":"(?\u003c![\\p{S}\\p{P}\u0026\u0026[^(),;\\[\\]`{}_\"']])(=\u003e|⇒)"},{"name":"keyword.other.big-arrow-left.purescript","match":"\u003c=|⇐"},{"name":"keyword.other.forall.purescript","match":"forall|∀"},{"include":"#string_double_quoted"},{"include":"#generic_type"},{"include":"#type_name"},{"include":"#comments"},{"name":"keyword.other.purescript","match":"[\\p{S}\\p{P}\u0026\u0026[^(),;\\[\\]`{}_\"']]+"}]},"type_synonym_declaration":{"patterns":[{"name":"meta.declaration.type.type.purescript","contentName":"meta.type-signature.purescript","begin":"^(\\s)*(type)\\s+(.+?)\\s*(?=\\=|$)","end":"^(?!\\1[ \\t]|[ \\t]*$)","patterns":[{"match":"=","captures":{"0":{"name":"keyword.operator.assignment.purescript"}}},{"include":"#type_signature"},{"include":"#record_types"},{"include":"#row_types"},{"include":"#comments"}],"beginCaptures":{"2":{"name":"storage.type.data.purescript"},"3":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}}}]},"typeclass_declaration":{"patterns":[{"name":"meta.declaration.typeclass.purescript","begin":"^\\s*\\b(class)(?!')\\b","end":"(\\bwhere\\b|(?=^\\S))","patterns":[{"include":"#type_signature"}],"beginCaptures":{"1":{"name":"storage.type.class.purescript"}},"endCaptures":{"1":{"name":"keyword.other.purescript"}}}]},"typed_hole":{"patterns":[{"name":"entity.name.function.typed-hole.purescript","match":"\\?(?:[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)"}]}}}