vue-files-preview-inno
Version:
A tool for previewing files such as doc, excel, pdf, image, markdown, txt, audio, and video and so on.
227 lines (226 loc) • 5.28 kB
JavaScript
var i, r;
function s() {
if (r) return i;
r = 1;
function c(e) {
const t = e.regex, n = [
"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"
], a = [
"get",
"set",
"args",
"call"
];
return {
name: "AspectJ",
keywords: n,
illegal: /<\/|#/,
contains: [
e.COMMENT(
/\/\*\*/,
/\*\//,
{
relevance: 0,
contains: [
{
// eat up @'s in emails to prevent them to be recognized as doctags
begin: /\w+@/,
relevance: 0
},
{
className: "doctag",
begin: /@[A-Za-z]+/
}
]
}
),
e.C_LINE_COMMENT_MODE,
e.C_BLOCK_COMMENT_MODE,
e.APOS_STRING_MODE,
e.QUOTE_STRING_MODE,
{
className: "class",
beginKeywords: "aspect",
end: /[{;=]/,
excludeEnd: !0,
illegal: /[:;"\[\]]/,
contains: [
{ beginKeywords: "extends implements pertypewithin perthis pertarget percflowbelow percflow issingleton" },
e.UNDERSCORE_TITLE_MODE,
{
begin: /\([^\)]*/,
end: /[)]+/,
keywords: n.concat(a),
excludeEnd: !1
}
]
},
{
className: "class",
beginKeywords: "class interface",
end: /[{;=]/,
excludeEnd: !0,
relevance: 0,
keywords: "class interface",
illegal: /[:"\[\]]/,
contains: [
{ beginKeywords: "extends implements" },
e.UNDERSCORE_TITLE_MODE
]
},
{
// AspectJ Constructs
beginKeywords: "pointcut after before around throwing returning",
end: /[)]/,
excludeEnd: !1,
illegal: /["\[\]]/,
contains: [
{
begin: t.concat(e.UNDERSCORE_IDENT_RE, /\s*\(/),
returnBegin: !0,
contains: [e.UNDERSCORE_TITLE_MODE]
}
]
},
{
begin: /[:]/,
returnBegin: !0,
end: /[{;]/,
relevance: 0,
excludeEnd: !1,
keywords: n,
illegal: /["\[\]]/,
contains: [
{
begin: t.concat(e.UNDERSCORE_IDENT_RE, /\s*\(/),
keywords: n.concat(a),
relevance: 0
},
e.QUOTE_STRING_MODE
]
},
{
// this prevents 'new Name(...), or throw ...' from being recognized as a function definition
beginKeywords: "new throw",
relevance: 0
},
{
// the function class is a bit different for AspectJ compared to the Java language
className: "function",
begin: /\w+ +\w+(\.\w+)?\s*\([^\)]*\)\s*((throws)[\w\s,]+)?[\{;]/,
returnBegin: !0,
end: /[{;=]/,
keywords: n,
excludeEnd: !0,
contains: [
{
begin: t.concat(e.UNDERSCORE_IDENT_RE, /\s*\(/),
returnBegin: !0,
relevance: 0,
contains: [e.UNDERSCORE_TITLE_MODE]
},
{
className: "params",
begin: /\(/,
end: /\)/,
relevance: 0,
keywords: n,
contains: [
e.APOS_STRING_MODE,
e.QUOTE_STRING_MODE,
e.C_NUMBER_MODE,
e.C_BLOCK_COMMENT_MODE
]
},
e.C_LINE_COMMENT_MODE,
e.C_BLOCK_COMMENT_MODE
]
},
e.C_NUMBER_MODE,
{
// annotation is also used in this language
className: "meta",
begin: /@[A-Za-z]+/
}
]
};
}
return i = c, i;
}
export {
s as __require
};
//# sourceMappingURL=aspectj.mjs.map