fileTypes Rego name Rego patterns include #comment include #keyword include #operator include #head include #term repository call captures 1 name support.function.any-method.rego match ([a-zA-Z_][a-zA-Z0-9_]*)\( name meta.function-call.rego comment captures 1 name punctuation.definition.comment.rego match (#).*$\n? name comment.line.number-sign.rego constant match \b(?:true|false|null)\b name constant.language.rego head begin ^([[:alpha:]_][[:alnum:]_]*) beginCaptures 1 name entity.name.function.declaration end (=|{|\n) name meta.function.rego patterns include #term keyword match (^|\s+)(?:(default|not|package|import|as|with|else))\s+ name keyword.other.rego number match (?x: # turn on extended mode -? # an optional minus (?: 0 # a zero | # ...or... [1-9] # a 1-9 character \d* # followed by zero or more digits ) (?: (?: \. # a period \d+ # followed by one or more digits )? (?: [eE] # an e character [+-]? # followed by an option +/- \d+ # followed by one or more digits )? # make exponent optional )? # make decimal portion optional ) name constant.numeric.rego operator patterns match \=|\!\=|>|<|<\=|>\=|\+|-|\*|%|/|\||&|:\= name keyword.operator.comparison.rego string begin " beginCaptures 0 name punctuation.definition.string.begin.rego end " endCaptures 0 name punctuation.definition.string.end.rego name string.quoted.double.rego patterns match (?x: # turn on extended mode \\ # a literal backslash (?: # ...followed by... ["\\/bfnrt] # one of these characters | # ...or... u # a u [0-9a-fA-F]{4} # and four hex digits ) ) name constant.character.escape.rego match \\. name invalid.illegal.unrecognized-string-escape.rego term patterns include #constant include #string include #number include #call include #variable variable match \b[[:alpha:]_][[:alnum:]_]*\b name meta.identifier.rego scopeName source.rego uuid 165D3571-322B-4C57-ABAD-9EB3922FB004