var r=/({)?[a-zA-Z0-9_]+(})?/;function c(n,t){for(var e,i,a=!1;!n.eol()&&(e=n.next())!=t.pending;){if(e==="$"&&i!="\\"&&t.pending=='"'){a=!0;break}i=e}return a&&n.backUp(1),e==t.pending?t.continueString=!1:t.continueString=!0,"string"}function o(n,t){var e=n.next();return e==="$"?n.match(r)?"variableName.special":"variable":t.continueString?(n.backUp(1),c(n,t)):n.match(/(\s+)?\w+\(/)||n.match(/(\s+)?\w+\ \(/)?(n.backUp(1),"def"):e=="#"?(n.skipToEnd(),"comment"):e=="'"||e=='"'?(t.pending=e,c(n,t)):e=="("||e==")"?"bracket":e.match(/[0-9]/)?"number":(n.eatWhile(/[\w-]/),null)}const u={name:"cmake",startState:function(){var n={};return n.inDefinition=!1,n.inInclude=!1,n.continueString=!1,n.pending=!1,n},token:function(n,t){return n.eatSpace()?null:o(n,t)}};export{u as t};
