UNPKG

vitepress-openapi

Version:

Generate VitePress API Documentation from OpenAPI Specification.

1 lines 23 kB
require(`./useOpenapi-BAN_S-Tx.cjs`);var e=[Object.freeze(JSON.parse(`{"displayName":"BIRD2 Configuration","fileTypes":["conf","bird","bird2","bird3","bird.conf","bird2.conf","bird3.conf"],"foldingStartMarker":"\\\\{\\\\s*$","foldingStopMarker":"^\\\\s*}","name":"bird2","patterns":[{"include":"#comments"},{"include":"#strings"},{"include":"#ip-addresses"},{"include":"#prefixes"},{"include":"#vpn-rd"},{"include":"#bytestrings"},{"include":"#bgp-paths"},{"include":"#print-statements"},{"include":"#template-definitions"},{"include":"#filter-definitions"},{"include":"#function-definitions"},{"include":"#protocol-definitions"},{"include":"#next-hop-statements"},{"include":"#neighbor-statements"},{"include":"#import-export-statements"},{"include":"#variable-declarations"},{"include":"#method-calls"},{"include":"#function-calls"},{"include":"#method-properties"},{"include":"#route-attributes"},{"include":"#data-types"},{"include":"#constants"},{"include":"#structural-keywords"},{"include":"#protocol-phrases"},{"include":"#functional-keywords"},{"include":"#semantic-modifiers"},{"include":"#builtin-functions"},{"include":"#filter-names"},{"include":"#user-variables"},{"include":"#operators"},{"include":"#numbers"},{"include":"#symbols"},{"include":"#blocks"}],"repository":{"bgp-paths":{"patterns":[{"begin":"\\\\[=","beginCaptures":{"0":{"name":"punctuation.definition.bgp-path.begin.bird"}},"end":"=]","endCaptures":{"0":{"name":"punctuation.definition.bgp-path.end.bird"}},"name":"meta.bgp-path.bird","patterns":[{"match":"[*+?]","name":"keyword.operator.wildcard.bird"},{"match":"\\\\b[0-9]+\\\\b","name":"constant.numeric.asn.bird"},{"include":"#operators"},{"include":"#symbols"}]}]},"blocks":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.begin.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.block.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.set.begin.bird"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.set.end.bird"}},"name":"meta.set.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.tuple.begin.bird"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.tuple.end.bird"}},"name":"meta.tuple.bird","patterns":[{"include":"$self"}]},{"match":";","name":"punctuation.terminator.statement.bird"},{"match":",","name":"punctuation.separator.bird"}]},"builtin-functions":{"patterns":[{"match":"\\\\b(?:defined|unset|roa_check|aspa_check|aspa_check_downstream|aspa_check_upstream|from_hex|format|append|prepend|add|delete|empty|reset|bt_assert|bt_test_suite|bt_test_same)\\\\b","name":"support.function.builtin.bird"}]},"bytestrings":{"patterns":[{"match":"\\\\bhex:\\\\h{2}(?:[-.:\\\\s]*\\\\h{2})*\\\\b","name":"constant.numeric.bytestring.bird"},{"match":"\\\\b(?:\\\\h{2}[-.:\\\\s]*){15,}\\\\h{2}\\\\b","name":"constant.numeric.bytestring.bird"},{"match":"\\\\b\\\\h{32,}\\\\b","name":"constant.numeric.bytestring.bird"}]},"comments":{"patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.bird"}},"end":"$","name":"comment.line.number-sign.bird"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.bird"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.bird"}},"name":"comment.block.bird"}]},"constants":{"patterns":[{"match":"\\\\b(?:on|off|yes|no|true|false)\\\\b","name":"constant.language.boolean.bird"},{"match":"\\\\b(?:empty|unknown|generic|rt|ro|one|ten)\\\\b","name":"constant.language.special.bird"},{"match":"\\\\bSCOPE_(?:HOST|LINK|SITE|ORGANIZATION|UNIVERSE)\\\\b","name":"constant.language.scope.bird"},{"match":"\\\\bRTS_(?:STATIC|INHERIT|DEVICE|RIP|OSPF|OSPF_IA|OSPF_EXT1|OSPF_EXT2|BGP|PIPE|BABEL)\\\\b","name":"constant.language.source.bird"},{"match":"\\\\bRTD_(?:ROUTER|DEVICE|MULTIPATH|BLACKHOLE|UNREACHABLE|PROHIBIT)\\\\b","name":"constant.language.dest.bird"},{"match":"\\\\bROA_(?:UNKNOWN|INVALID|VALID)\\\\b","name":"constant.language.roa.bird"},{"match":"\\\\bASPA_(?:UNKNOWN|INVALID|VALID)\\\\b","name":"constant.language.aspa.bird"},{"match":"\\\\bNET_(?:IP4|IP6|IP6_SADR|VPN4|VPN6|ROA4|ROA6|FLOW4|FLOW6|MPLS)\\\\b","name":"constant.language.net-type.bird"},{"match":"\\\\bMPLS_POLICY_(?:NONE|STATIC|PREFIX|AGGREGATE|VRF)\\\\b","name":"constant.language.mpls.bird"}]},"data-types":{"patterns":[{"match":"\\\\b(?:(?:int|pair|quad|ip|prefix|ec|lc|rd|enum)\\\\s+set|int|bool|ip|prefix|rd|pair|quad|ec|lc|string|bytestring|bgpmask|bgppath|clist|eclist|lclist|set|enum|route)\\\\b","name":"storage.type.bird"}]},"filter-definitions":{"patterns":[{"begin":"\\\\b(filter)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.filter.bird"},"2":{"name":"entity.name.function.filter.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.filter-definition.bird","patterns":[{"include":"$self"}]}]},"filter-names":{"patterns":[{"match":"\\\\b[A-Z_a-z][0-9A-Z_a-z]*_filter\\\\b","name":"entity.name.function.filter.bird"}]},"function-calls":{"patterns":[{"begin":"\\\\b([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.call.bird"}},"end":"\\\\)","name":"meta.function-call.bird","patterns":[{"include":"$self"}]}]},"function-definitions":{"patterns":[{"begin":"\\\\b(function)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')(?=\\\\s*\\\\()","beginCaptures":{"1":{"name":"keyword.control.function.bird"},"2":{"name":"entity.name.function.user-defined.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.function-definition.bird","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.bird"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bird"}},"name":"meta.function-parameters.bird","patterns":[{"include":"#data-types"},{"include":"#symbols"}]},{"begin":"->","beginCaptures":{"0":{"name":"keyword.operator.return-type.bird"}},"end":"(?=\\\\{)","name":"meta.function-return-type.bird","patterns":[{"include":"#data-types"}]},{"include":"$self"}]}]},"functional-keywords":{"patterns":[{"match":"\\\\b(?:static|rip|ospf|bgp|babel|rpki|bfd|bmp|device|direct|kernel|pipe|perf|mrt|aggregator|l3vpn|radv)\\\\b","name":"keyword.control.protocol-type.bird"},{"match":"\\\\b(?:graceful|restart|preference|disabled|hold|keepalive|connect|retry|start|delay|error|wait|forget|scan|randomize|router|id)\\\\b","name":"keyword.control.routing.bird"},{"match":"\\\\b(?:interface|type|wired|wireless|tunnel|rxcost|limit|hello|update|interval|port|tx|class|dscp|priority|rx|buffer|length|check|link|rtt|cost|min|max|decay|send|timestamps)\\\\b","name":"keyword.other.interface.bird"},{"match":"\\\\b(?:(?:refresh|retry|expire|transport|ssh|tcp|user|address|version|ignore|private|public|key)|(?:local\\\\s+address|ignore\\\\s+max\\\\s+length|min\\\\s+version|max\\\\s+version|bird\\\\s+private\\\\s+key|remote\\\\s+public\\\\s+key))\\\\b","name":"keyword.other.rpki.bird"},{"match":"\\\\b(?:authentication|none|mac|permissive|password|generate|accept|from|to|algorithm|hmac|sha1|sha256|sha384|sha512|blake2s128|blake2s256|blake2b256|blake2b512)\\\\b","name":"keyword.other.auth.bird"},{"match":"\\\\btime\\\\b","name":"keyword.other.time.bird"},{"match":"\\\\b(?:hostname|description|debug|log|syslog|stderr|bird|protocols|tables|channels|timeouts|passwords|bfd|confederation|cluster|stub|dead|neighbors|area|md5|multihop|passive|rfc1583compat|tick|ls|retransmit|transmit|ack|state|database|summary|external|nssa|translator|always|candidate|never|role|stability|election|action|warn|block|disable|keep|filtered|receive|modify|add|delete|withdraw|unreachable|blackhole|prohibit|unreach|igp_metric|localpref|med|origin|community|large_community|ext_community|as_path|prepend|weight|gateway|scope|onlink|recursive|multipath|igp|channel|sadr|src|learn|persist|via|ng)\\\\b","name":"keyword.other.config.bird"},{"match":"\\\\b(?:flow4|flow6|dst|src|proto|header|dport|sport|icmp|code|tcp|flags|dscp|dont_fragment|is_fragment|first_fragment|last_fragment|fragment|label|offset)\\\\b","name":"keyword.other.flowspec.bird"},{"match":"\\\\b(?:vpn4|vpn6|mpls|aspa|roa4|roa6)\\\\b","name":"keyword.other.address.bird"},{"match":"\\\\b(?:all|none)\\\\b","name":"keyword.other.quick-declaration.bird"}]},"import-export-statements":{"patterns":[{"captures":{"1":{"name":"keyword.control.import-export.bird"},"2":{"name":"keyword.control.filter.bird"},"3":{"name":"entity.name.function.filter.bird"}},"match":"\\\\b(import)\\\\s+(filter)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\b","name":"meta.import-statement.bird"},{"begin":"\\\\b(import)\\\\s+(filter)\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.import-export.bird"},"2":{"name":"keyword.control.filter.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.import-filter-inline.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\b(export)\\\\s+(where)\\\\b","beginCaptures":{"1":{"name":"keyword.control.import-export.bird"},"2":{"name":"keyword.control.where.bird"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.bird"}},"name":"meta.export-where-clause.bird","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"keyword.control.import-export.bird"},"2":{"name":"keyword.control.filter.bird"},"3":{"name":"entity.name.function.filter.bird"}},"match":"\\\\b(export)\\\\s+(filter)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\b","name":"meta.export-statement.bird"}]},"ip-addresses":{"patterns":[{"match":"\\\\b(?:[0-9]{1,3}\\\\.){3}[0-9]{1,3}(?:/[0-9]{1,2})?\\\\b","name":"constant.numeric.ip.ipv4.bird"},{"match":"\\\\b(?:\\\\h{0,4}:){2,7}\\\\h{0,4}(?:/[0-9]{1,3})?\\\\b","name":"constant.numeric.ip.ipv6.bird"},{"match":"::(?:\\\\h{0,4}:){0,6}\\\\h{0,4}(?:/[0-9]{1,3})?\\\\b","name":"constant.numeric.ip.ipv6.bird"},{"match":"\\\\b(?:\\\\h{0,4}:){1,6}::(?:\\\\h{0,4}:){0,5}\\\\h{0,4}(?:/[0-9]{1,3})?\\\\b","name":"constant.numeric.ip.ipv6.bird"}]},"method-calls":{"patterns":[{"begin":"\\\\.\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.method.bird"}},"end":"\\\\)","name":"meta.method-call.bird","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"variable.other.property.bird"}},"match":"\\\\.\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)","name":"meta.method-access.bird"}]},"method-properties":{"patterns":[{"match":"(?<=\\\\.)\\\\s*(?:first|last|last_nonaggregated|len|asn|data1??|data2|is_v4|ip|src|dst|rd|maxlen|type|mask|min|max)\\\\b(?!\\\\s*\\\\()","name":"support.variable.property.bird"}]},"neighbor-statements":{"patterns":[{"captures":{"1":{"name":"keyword.control.local.bird"},"2":{"name":"entity.name.symbol.local-address.bird"},"3":{"name":"keyword.control.port.bird"},"4":{"name":"constant.numeric.port.bird"},"5":{"name":"keyword.control.as.bird"},"6":{"name":"constant.numeric.asn.bird"}},"match":"\\\\b(local)\\\\s+([.:\\\\h]+|[A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')(?:\\\\s+(port)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*))?\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.local-as-statement.bird"},{"captures":{"1":{"name":"keyword.control.local.bird"},"2":{"name":"keyword.control.as.bird"},"3":{"name":"constant.numeric.asn.bird"}},"match":"\\\\b(local)\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.local-as-template-statement.bird"},{"captures":{"1":{"name":"keyword.control.neighbor.bird"},"2":{"name":"constant.numeric.ip-address.bird"},"3":{"name":"meta.interface-reference.bird"},"4":{"name":"string.quoted.single.interface.bird"},"5":{"name":"variable.other.interface.bird"},"6":{"name":"keyword.control.as.bird"},"7":{"name":"constant.numeric.asn.bird"},"8":{"name":"keyword.control.port.bird"},"9":{"name":"constant.numeric.port.bird"}},"match":"\\\\b(neighbor)\\\\s+([.:\\\\h]+)\\\\s*(%\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?(?:\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*))?\\\\s+(port)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.neighbor-port-statement.bird"},{"captures":{"1":{"name":"keyword.control.neighbor.bird"},"2":{"name":"entity.name.symbol.neighbor-address.bird"},"3":{"name":"meta.interface-reference.bird"},"4":{"name":"string.quoted.single.interface.bird"},"5":{"name":"variable.other.interface.bird"},"6":{"name":"keyword.control.as.bird"},"7":{"name":"constant.numeric.asn.bird"},"8":{"name":"keyword.control.port.bird"},"9":{"name":"constant.numeric.port.bird"}},"match":"\\\\b(neighbor)\\\\s+('[-.0-:A-Z_a-z]+'|(?!(?:as|range)\\\\b)[A-Z_a-z][0-9A-Z_a-z]*)\\\\s*(%\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?(?:\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*))?\\\\s+(port)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.neighbor-port-symbolic-statement.bird"},{"captures":{"1":{"name":"keyword.control.neighbor.bird"},"2":{"name":"constant.numeric.ip-address.bird"},"3":{"name":"meta.interface-reference.bird"},"4":{"name":"string.quoted.single.interface.bird"},"5":{"name":"variable.other.interface.bird"},"6":{"name":"keyword.control.as.bird"},"7":{"name":"constant.numeric.asn.bird"}},"match":"\\\\b(neighbor)\\\\s+([.:\\\\h]+)\\\\s*(%\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.neighbor-statement.bird"},{"captures":{"1":{"name":"keyword.control.neighbor.bird"},"2":{"name":"entity.name.symbol.neighbor-address.bird"},"3":{"name":"meta.interface-reference.bird"},"4":{"name":"string.quoted.single.interface.bird"},"5":{"name":"variable.other.interface.bird"},"6":{"name":"keyword.control.as.bird"},"7":{"name":"constant.numeric.asn.bird"}},"match":"\\\\b(neighbor)\\\\s+('[-.0-:A-Z_a-z]+'|(?!(?:as|range)\\\\b)[A-Z_a-z][0-9A-Z_a-z]*)\\\\s*(%\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.neighbor-symbolic-statement.bird"},{"captures":{"1":{"name":"keyword.control.neighbor.bird"},"2":{"name":"keyword.control.as.bird"},"3":{"name":"constant.numeric.asn.bird"}},"match":"\\\\b(neighbor)\\\\s+(as)\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\b","name":"meta.neighbor-template-statement.bird"},{"captures":{"1":{"name":"keyword.control.source.bird"},"2":{"name":"constant.numeric.ip-address.bird"}},"match":"\\\\b(source address)\\\\s+([.:\\\\h]+)\\\\b","name":"meta.source-address-statement.bird"}]},"next-hop-statements":{"patterns":[{"captures":{"1":{"name":"keyword.control.routing.bird"},"2":{"name":"keyword.other.ip-version.bird"},"3":{"name":"constant.numeric.ip-address.bird"}},"match":"\\\\b(next hop)\\\\s+(ipv4)\\\\s+([.0-9]+)\\\\b","name":"meta.next-hop-ipv4.bird"},{"captures":{"1":{"name":"keyword.control.routing.bird"},"2":{"name":"keyword.other.ip-version.bird"},"3":{"name":"constant.numeric.ip-address.bird"}},"match":"\\\\b(next hop)\\\\s+(ipv6)\\\\s+([:\\\\h]+)\\\\b","name":"meta.next-hop-ipv6.bird"},{"captures":{"1":{"name":"keyword.control.routing.bird"},"2":{"name":"keyword.other.semantic-modifier.bird"}},"match":"\\\\b(next hop)\\\\s+(self)\\\\b","name":"meta.next-hop-simple.bird"},{"captures":{"1":{"name":"keyword.control.routing.bird"},"2":{"name":"keyword.other.semantic-modifier.bird"}},"match":"\\\\b(extended next hop)\\\\s+(o(?:n|ff))\\\\b","name":"meta.extended-next-hop-statement.bird"}]},"numbers":{"patterns":[{"match":"\\\\b0x\\\\h+\\\\b","name":"constant.numeric.hex.bird"},{"match":"\\\\b[0-9]+\\\\b","name":"constant.numeric.decimal.bird"},{"captures":{"1":{"name":"keyword.other.unit.bird"}},"match":"\\\\b[0-9]+\\\\s*([mu]??s)\\\\b","name":"constant.numeric.time.bird"}]},"operators":{"patterns":[{"match":"==|!=|<=|>=|!~|[<=>~]","name":"keyword.operator.comparison.bird"},{"match":"&&|\\\\|\\\\||!|->","name":"keyword.operator.logical.bird"},{"match":"\\\\+\\\\+","name":"keyword.operator.concat.bird"},{"match":"[-%*+/]","name":"keyword.operator.arithmetic.bird"},{"match":"\\\\.\\\\.","name":"keyword.operator.range.bird"},{"match":"\\\\.","name":"keyword.operator.accessor.bird"}]},"prefixes":{"patterns":[{"match":"\\\\b(?:(?:[0-9]{1,3}\\\\.){3}[0-9]{1,3}|(?:\\\\h{0,4}:)+\\\\h{0,4})/[0-9]{1,3}(?:[-+]|\\\\{[0-9]+,[0-9]+})?\\\\b","name":"constant.numeric.prefix.bird"}]},"print-statements":{"patterns":[{"begin":"\\\\b(printn??)\\\\b","beginCaptures":{"1":{"name":"keyword.other.print.bird"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.bird"}},"name":"meta.print-statement.bird","patterns":[{"include":"$self"}]}]},"protocol-definitions":{"patterns":[{"begin":"\\\\b(protocol)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s+(from)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.protocol.bird"},"2":{"name":"entity.name.type.protocol.bird"},"3":{"name":"entity.name.function.protocol.bird"},"4":{"name":"keyword.control.template-reference.bird"},"5":{"name":"entity.name.function.template.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.protocol-definition-with-template.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\b(protocol)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.protocol.bird"},"2":{"name":"entity.name.type.protocol.bird"},"3":{"name":"entity.name.function.protocol.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.protocol-definition-with-name.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\b(protocol)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.protocol.bird"},"2":{"name":"entity.name.type.protocol.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.protocol-definition-anonymous.bird","patterns":[{"include":"$self"}]}]},"protocol-phrases":{"patterns":[{"match":"\\\\b(?:strict\\\\s+bind|zero\\\\s+udp6\\\\s+checksum\\\\s+rx|idle\\\\s+tx\\\\s+interval|multiplier|keyed|meticulous)\\\\b","name":"keyword.other.bfd.phrase.bird"},{"match":"\\\\b(?:send\\\\s+timestamps|rtt\\\\s+(?:cost|min|max|decay)|next\\\\s+hop\\\\s+prefer|prefer|native)\\\\b","name":"keyword.other.babel.phrase.bird"},{"match":"\\\\b(?:next\\\\s+hop\\\\s+(?:self|address|ibgp|ebgp)|link\\\\s+local\\\\s+next\\\\s+hop\\\\s+format|import\\\\s+table|export\\\\s+table|base\\\\s+table|add\\\\s+paths|aigp\\\\s+originate|long\\\\s+lived\\\\s+graceful\\\\s+restart|long\\\\s+lived\\\\s+stale\\\\s+time|dynamic\\\\s+name(?:\\\\s+digits)?|free\\\\s+bind|ttl\\\\s+security|multihop\\\\s+password|rr\\\\s+client|rs\\\\s+client|advertise\\\\s+hostname|interpret\\\\s+communities|deterministic\\\\s+med|default\\\\s+bgp_local_pref|default\\\\s+bgp_med|med\\\\s+metric|igp\\\\s+metric|missing\\\\s+lladdr|gateway\\\\s+address|forwarding\\\\s+addressed|gateway\\\\s+recursive|allow\\\\s+local\\\\s+as|allow\\\\s+bogus\\\\s+as|originate\\\\s+community|full\\\\s+route\\\\s+table|capabilities|primary)\\\\b","name":"keyword.other.bgp.phrase.bird"}]},"route-attributes":{"patterns":[{"match":"\\\\b(?:net|scope|preference|from|gw|proto|source|dest|ifname|ifindex|weight|gw_mpls|gw_mpls_stack|onlink|igp_metric|mpls_label|mpls_policy|mpls_class|bgp_path|bgp_origin|bgp_next_hop|bgp_med|bgp_local_pref|bgp_community|bgp_ext_community|bgp_large_community|bgp_originator_id|bgp_cluster_list|ospf_metric1|ospf_metric2|ospf_tag|ospf_router_id|rip_metric|rip_tag|mypath|mylclist)\\\\b","name":"support.variable.route-attribute.bird"}]},"semantic-modifiers":{"patterns":[{"match":"\\\\b(?:self|on|off|remote|extended)\\\\b","name":"keyword.other.semantic-modifier.bird"}]},"strings":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.bird"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.bird"}},"name":"string.quoted.double.bird","patterns":[{"match":"\\\\.","name":"constant.character.escape.bird"}]},{"match":"'[-.0-:A-Z_a-z]+'","name":"entity.name.symbol.quoted.bird"}]},"structural-keywords":{"patterns":[{"match":"\\\\b(?:if|then|else|case|for|do|while|break|continue|return|in)\\\\b","name":"keyword.control.bird"},{"match":"\\\\belse\\\\s*:","name":"keyword.control.case.else.bird"},{"match":"\\\\b(?:accept|reject|error)\\\\b","name":"keyword.control.flow.bird"},{"match":"\\\\b(?:protocol|table|define|include|attribute|eval|ipv4|ipv6|local|as|from|where|cost|limit|action)\\\\b","name":"keyword.control.structure.bird"}]},"symbols":{"patterns":[{"match":"\\\\b[A-Z_a-z][0-9A-Z_a-z]*\\\\b","name":"variable.other.bird"}]},"template-definitions":{"patterns":[{"begin":"\\\\b(template)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s+(from)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.template.bird"},"2":{"name":"entity.name.type.protocol.bird"},"3":{"name":"entity.name.function.template.bird"},"4":{"name":"keyword.control.template-reference.bird"},"5":{"name":"entity.name.function.template.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.template-definition-with-from.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\b(template)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.template.bird"},"2":{"name":"entity.name.type.protocol.bird"},"3":{"name":"entity.name.function.template.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.template-definition-with-name.bird","patterns":[{"include":"$self"}]},{"begin":"\\\\b(template)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.template.bird"},"2":{"name":"entity.name.type.protocol.bird"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.end.bird"}},"name":"meta.template-definition-anonymous.bird","patterns":[{"include":"$self"}]}]},"user-variables":{"patterns":[{"match":"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b","name":"variable.other.user-defined.bird"}]},"variable-declarations":{"patterns":[{"captures":{"1":{"name":"storage.type.bird"},"2":{"name":"variable.other.declaration.bird"}},"match":"\\\\b((?:int|pair|quad|ip|prefix|ec|lc|rd|enum)\\\\s+set|int|bool|ip|prefix|rd|pair|quad|ec|lc|string|bytestring|bgpmask|bgppath|clist|eclist|lclist|set|enum|route)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)(?:\\\\s*=|;)","name":"meta.variable-declaration.bird"}]},"vpn-rd":{"match":"\\\\b(?:[0-9]+:[0-9]+|[012]:[0-9]+:[0-9]+|(?:[0-9]{1,3}\\\\.){3}[0-9]{1,3}:[0-9]+)\\\\b","name":"constant.numeric.vpn-rd.bird"}},"scopeName":"source.bird2","aliases":["bird"]}`))];exports.default=e;