axapta function
Highlight.js language definition for axapta.
Implementation
Mode axapta(Highlight hljs) {
final Mode mode0 = Mode();
mode0.begin = r'\\[\s\S]';
mode0.relevance = 0;
return Mode(
name: r'X++',
aliases: [r'x++'],
keywords: {
r'keyword': [
r'abstract',
r'as',
r'asc',
r'avg',
r'break',
r'breakpoint',
r'by',
r'byref',
r'case',
r'catch',
r'changecompany',
r'class',
r'client',
r'client',
r'common',
r'const',
r'continue',
r'count',
r'crosscompany',
r'delegate',
r'delete_from',
r'desc',
r'display',
r'div',
r'do',
r'edit',
r'else',
r'eventhandler',
r'exists',
r'extends',
r'final',
r'finally',
r'firstfast',
r'firstonly',
r'firstonly1',
r'firstonly10',
r'firstonly100',
r'firstonly1000',
r'flush',
r'for',
r'forceliterals',
r'forcenestedloop',
r'forceplaceholders',
r'forceselectorder',
r'forupdate',
r'from',
r'generateonly',
r'group',
r'hint',
r'if',
r'implements',
r'in',
r'index',
r'insert_recordset',
r'interface',
r'internal',
r'is',
r'join',
r'like',
r'maxof',
r'minof',
r'mod',
r'namespace',
r'new',
r'next',
r'nofetch',
r'notexists',
r'optimisticlock',
r'order',
r'outer',
r'pessimisticlock',
r'print',
r'private',
r'protected',
r'public',
r'readonly',
r'repeatableread',
r'retry',
r'return',
r'reverse',
r'select',
r'server',
r'setting',
r'static',
r'sum',
r'super',
r'switch',
r'this',
r'throw',
r'try',
r'ttsabort',
r'ttsbegin',
r'ttscommit',
r'unchecked',
r'update_recordset',
r'using',
r'validtimestate',
r'void',
r'where',
r'while',
],
r'built_in': [
r'anytype',
r'boolean',
r'byte',
r'char',
r'container',
r'date',
r'double',
r'enum',
r'guid',
r'int',
r'int64',
r'long',
r'real',
r'short',
r'str',
r'utcdatetime',
r'var',
],
r'literal': [r'default', r'false', r'null', r'true'],
},
contains: [
Mode(
scope: r'comment',
begin: r'//',
end: r'$',
contains: [
Mode(
scope: r'doctag',
begin: r'[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',
end: r'(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):',
excludeBegin: true,
relevance: 0,
),
Mode(
begin:
r"[ ]+((?:I|a|is|so|us|to|at|if|in|it|on|[A-Za-z]+['](d|ve|re|ll|t|s|n)|[A-Za-z]+[-][a-z]+|[A-Za-z][a-z]{2,})[.]?[:]?([.][ ]|[ ])){3}",
),
],
),
Mode(
scope: r'comment',
begin: r'/\*',
end: r'\*/',
contains: [
Mode(
scope: r'doctag',
begin: r'[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',
end: r'(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):',
excludeBegin: true,
relevance: 0,
),
Mode(
begin:
r"[ ]+((?:I|a|is|so|us|to|at|if|in|it|on|[A-Za-z]+['](d|ve|re|ll|t|s|n)|[A-Za-z]+[-][a-z]+|[A-Za-z][a-z]{2,})[.]?[:]?([.][ ]|[ ])){3}",
),
],
),
Mode(
scope: r'string',
begin: r"'",
end: r"'",
illegal: r'\n',
contains: [mode0],
),
Mode(
scope: r'string',
begin: r'"',
end: r'"',
illegal: r'\n',
contains: [mode0],
),
Mode(
scope: r'number',
begin:
r'(-?)(\b0[xX][a-fA-F0-9]+|(\b\d+(\.\d*)?|\.\d+)([eE][-+]?\d+)?)',
relevance: 0,
),
Mode(scope: r'meta', begin: r'#', end: r'$'),
Mode(
variants: [
Mode(
match: [
r'(class|interface)\s+',
r'[a-zA-Z_]\w*',
r'\s+(extends|implements)\s+',
r'[a-zA-Z_]\w*',
],
),
Mode(match: [r'class\s+', r'[a-zA-Z_]\w*']),
],
scope: {2: r'title.class', 4: r'title.class.inherited'},
keywords: {
r'keyword': [
r'abstract',
r'as',
r'asc',
r'avg',
r'break',
r'breakpoint',
r'by',
r'byref',
r'case',
r'catch',
r'changecompany',
r'class',
r'client',
r'client',
r'common',
r'const',
r'continue',
r'count',
r'crosscompany',
r'delegate',
r'delete_from',
r'desc',
r'display',
r'div',
r'do',
r'edit',
r'else',
r'eventhandler',
r'exists',
r'extends',
r'final',
r'finally',
r'firstfast',
r'firstonly',
r'firstonly1',
r'firstonly10',
r'firstonly100',
r'firstonly1000',
r'flush',
r'for',
r'forceliterals',
r'forcenestedloop',
r'forceplaceholders',
r'forceselectorder',
r'forupdate',
r'from',
r'generateonly',
r'group',
r'hint',
r'if',
r'implements',
r'in',
r'index',
r'insert_recordset',
r'interface',
r'internal',
r'is',
r'join',
r'like',
r'maxof',
r'minof',
r'mod',
r'namespace',
r'new',
r'next',
r'nofetch',
r'notexists',
r'optimisticlock',
r'order',
r'outer',
r'pessimisticlock',
r'print',
r'private',
r'protected',
r'public',
r'readonly',
r'repeatableread',
r'retry',
r'return',
r'reverse',
r'select',
r'server',
r'setting',
r'static',
r'sum',
r'super',
r'switch',
r'this',
r'throw',
r'try',
r'ttsabort',
r'ttsbegin',
r'ttscommit',
r'unchecked',
r'update_recordset',
r'using',
r'validtimestate',
r'void',
r'where',
r'while',
],
r'built_in': [
r'anytype',
r'boolean',
r'byte',
r'char',
r'container',
r'date',
r'double',
r'enum',
r'guid',
r'int',
r'int64',
r'long',
r'real',
r'short',
r'str',
r'utcdatetime',
r'var',
],
r'literal': [r'default', r'false', r'null', r'true'],
},
),
],
);
}