var keywordArray=["package","message","import","syntax","required","optional","repeated","reserved","default","extensions","packed","bool","bytes","double","enum","float","string","int32","int64","uint32","uint64","sint32","sint64","fixed32","fixed64","sfixed32","sfixed64","option","service","rpc","returns"],keywords=new RegExp("^(("+keywordArray.join(")|(")+"))\\b","i"),identifiers=new RegExp("^[_A-Za-z¡-][_A-Za-z0-9¡-]*");const protobuf={name:"protobuf",token:function(stream){if(stream.eatSpace())return null;if(stream.match("//"))return stream.skipToEnd(),"comment";if(stream.match(/^[0-9\.+-]/,!1)){if(stream.match(/^[+-]?0x[0-9a-fA-F]+/))return"number";if(stream.match(/^[+-]?\d*\.\d+([EeDd][+-]?\d+)?/))return"number";if(stream.match(/^[+-]?\d+([EeDd][+-]?\d+)?/))return"number"}return stream.match(/^"([^"]|(""))*"/)||stream.match(/^'([^']|(''))*'/)?"string":stream.match(keywords)?"keyword":stream.match(identifiers)?"variable":(stream.next(),null)},languageData:{autocomplete:keywordArray}};export{protobuf};
