cos top-level property
Language
cos
final
Implementation
final cos = Language(
id: "cos",
refs: {},
name: "Caché Object Script",
case_insensitive: true,
aliases: ["cls"],
keywords:
"property parameter class classmethod clientmethod extends as break catch close continue do d|0 else elseif for goto halt hang h|0 if job j|0 kill k|0 lock l|0 merge new open quit q|0 read r|0 return set s|0 tcommit throw trollback try tstart use view while write w|0 xecute x|0 zkill znspace zn ztrap zwrite zw zzdump zzwrite print zbreak zinsert zload zprint zremove zsave zzprint mv mvcall mvcrt mvdim mvprint zquit zsync ascii",
contains: [
Mode(
className: "number",
begin: "\\b(\\d+(\\.\\d*)?|\\.\\d+)",
relevance: 0,
),
Mode(
className: "string",
variants: [
Mode(
begin: "\"",
end: "\"",
contains: [
Mode(
begin: "\"\"",
relevance: 0,
),
],
),
],
),
C_LINE_COMMENT_MODE,
C_BLOCK_COMMENT_MODE,
Mode(
className: "comment",
begin: ";",
end: "\$",
relevance: 0,
),
Mode(
className: "built_in",
begin: "(?:\\\$\\\$?|\\.\\.)\\^?[a-zA-Z]+",
),
Mode(
className: "built_in",
begin: "\\\$\\\$\\\$[a-zA-Z]+",
),
Mode(
className: "built_in",
begin: "%[a-z]+(?:\\.[a-z]+)*",
),
Mode(
className: "symbol",
begin: "\\^%?[a-zA-Z][\\w]*",
),
Mode(
className: "keyword",
begin: "##class|##super|#define|#dim",
),
Mode(
begin: "&sql\\(",
end: "\\)",
excludeBegin: true,
excludeEnd: true,
subLanguage: ["sql"],
),
Mode(
begin: "&(js|jscript|javascript)<",
end: ">",
excludeBegin: true,
excludeEnd: true,
subLanguage: ["javascript"],
),
Mode(
begin: "&html<\\s*<",
end: ">\\s*>",
subLanguage: ["xml"],
),
],
);