UNPKG

2.76 kBJavaScriptView Raw
1/*! `aspectj` grammar compiled for Highlight.js 11.6.0 */
2(()=>{var e=(()=>{"use strict";return e=>{
3const n=e.regex,t=["false","synchronized","int","abstract","float","private","char","boolean","static","null","if","const","for","true","while","long","throw","strictfp","finally","protected","import","native","final","return","void","enum","else","extends","implements","break","transient","new","catch","instanceof","byte","super","volatile","case","assert","short","package","default","double","public","try","this","switch","continue","throws","privileged","aspectOf","adviceexecution","proceed","cflowbelow","cflow","initialization","preinitialization","staticinitialization","withincode","target","within","execution","getWithinTypeName","handler","thisJoinPoint","thisJoinPointStaticPart","thisEnclosingJoinPointStaticPart","declare","parents","warning","error","soft","precedence","thisAspectInstance"],i=["get","set","args","call"]
4;return{name:"AspectJ",keywords:t,illegal:/<\/|#/,
5contains:[e.COMMENT(/\/\*\*/,/\*\//,{relevance:0,contains:[{begin:/\w+@/,
6relevance:0},{className:"doctag",begin:/@[A-Za-z]+/}]
7}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{
8className:"class",beginKeywords:"aspect",end:/[{;=]/,excludeEnd:!0,
9illegal:/[:;"\[\]]/,contains:[{
10beginKeywords:"extends implements pertypewithin perthis pertarget percflowbelow percflow issingleton"
11},e.UNDERSCORE_TITLE_MODE,{begin:/\([^\)]*/,end:/[)]+/,keywords:t.concat(i),
12excludeEnd:!1}]},{className:"class",beginKeywords:"class interface",end:/[{;=]/,
13excludeEnd:!0,relevance:0,keywords:"class interface",illegal:/[:"\[\]]/,
14contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{
15beginKeywords:"pointcut after before around throwing returning",end:/[)]/,
16excludeEnd:!1,illegal:/["\[\]]/,contains:[{
17begin:n.concat(e.UNDERSCORE_IDENT_RE,/\s*\(/),returnBegin:!0,
18contains:[e.UNDERSCORE_TITLE_MODE]}]},{begin:/[:]/,returnBegin:!0,end:/[{;]/,
19relevance:0,excludeEnd:!1,keywords:t,illegal:/["\[\]]/,contains:[{
20begin:n.concat(e.UNDERSCORE_IDENT_RE,/\s*\(/),keywords:t.concat(i),relevance:0
21},e.QUOTE_STRING_MODE]},{beginKeywords:"new throw",relevance:0},{
22className:"function",
23begin:/\w+ +\w+(\.\w+)?\s*\([^\)]*\)\s*((throws)[\w\s,]+)?[\{;]/,returnBegin:!0,
24end:/[{;=]/,keywords:t,excludeEnd:!0,contains:[{
25begin:n.concat(e.UNDERSCORE_IDENT_RE,/\s*\(/),returnBegin:!0,relevance:0,
26contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,
27relevance:0,keywords:t,
28contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE]
29},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_NUMBER_MODE,{
30className:"meta",begin:/@[A-Za-z]+/}]}}})();hljs.registerLanguage("aspectj",e)
31})();
\No newline at end of file