{"name":"SELinux Common Intermediate Language","scopeName":"source.cil","patterns":[{"include":"#main"}],"repository":{"comments":{"patterns":[{"name":"comment.line.number-sign.cil","match":"(;).*","captures":{"1":{"name":"punctuation.definition.comment.cil"}}}]},"constants":{"patterns":[{"name":"constant.numeric.integer.decimal.cil","match":"\\b([0-9]+)\\b"},{"name":"meta.string.aidl","match":"(\")([^\\\"]*)(\")","captures":{"1":{"name":"punctuation.definition.string.begin.aidl"},"2":{"name":"string.quoted.double.aidl"},"3":{"name":"punctuation.definition.string.end.aidl"}}}]},"keywords":{"patterns":[{"name":"keyword.cil","match":"\\b(allow|allowx|any|auditallow|auditallowx|block|blockabstract|blockinherit|boolean|booleanif|call|category|categoryalias|categoryaliasactual|categoryorder|categoryset|char|class|classcommon|classmap|classmapping|classorder|classpermission|classpermissionset|common|constrain|context|defaultrange|defaultrole|defaulttype|defaultuser|deny|devicetreecon|dir|dontaudit|dontauditx|expandtypeattribute|file|filecon|fsuse|genfscon|glblub|handleunknown|high|ibendportcon|ibpkeycon|in|ioctl|iomemcon|ioportcon|ipaddr|level|levelrange|low|low-high|macro|mls|mlsconstrain|mlsvalidatetrans|name|netifcon|neverallow|neverallowx|\u003cnode\u003e|nodecon|optional|pcidevicecon|perm|permissionx|pipe|pirqcon|policycap|portcon|rangetransition|reject|role|roleallow|roleattribute|roleattributeset|rolebounds|roletransition|roletype|\u003croot\u003e|selinuxuser|selinuxuserdefault|sensitivity|sensitivityalias|sensitivityaliasactual|sensitivitycategory|sensitivityorder|sid|sidcontext|sidorder|socket|source|\u003csrc_cil\u003e|\u003csrc_hll\u003e|\u003csrc_info\u003e|string|symlink|target|task|trans|tunable|tunableif|type|typealias|typealiasactual|typeattribute|typeattributeset|typebounds|typechange|typemember|typepermissive|typetransition|unordered|user|userattribute|userattributeset|userbounds|userlevel|userprefix|userrange|userrole|validatetrans|xattr)\\b"},{"name":"keyword.operator.word.cil","match":"\\b(and|or|xor|not|all|eq|neq|dom|domby|incomp|range)\\b"},{"name":"constant.language.cil","match":"\\b(\\*|dccp|false|h1|h2|l1|l2|object_r|r1|r2|r3|sctp|self|t1|t2|t2|tcp|true|u1|u2|u3|udp)\\b"}]},"main":{"patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#constants"},{"include":"#punctuation"}]},"punctuation":{"patterns":[{"name":"punctuation.section.parens.begin.cil","match":"(\\()"},{"name":"punctuation.section.parens.end.cil","match":"(\\))"}]}}}