1 |
- {"ast":null,"code":"/*\nLanguage: Delphi\nWebsite: https://www.embarcadero.com/products/delphi\nCategory: system\n*/\n\n/** @type LanguageFn */\nfunction delphi(hljs) {\n const KEYWORDS = [\"exports\", \"register\", \"file\", \"shl\", \"array\", \"record\", \"property\", \"for\", \"mod\", \"while\", \"set\", \"ally\", \"label\", \"uses\", \"raise\", \"not\", \"stored\", \"class\", \"safecall\", \"var\", \"interface\", \"or\", \"private\", \"static\", \"exit\", \"index\", \"inherited\", \"to\", \"else\", \"stdcall\", \"override\", \"shr\", \"asm\", \"far\", \"resourcestring\", \"finalization\", \"packed\", \"virtual\", \"out\", \"and\", \"protected\", \"library\", \"do\", \"xorwrite\", \"goto\", \"near\", \"function\", \"end\", \"div\", \"overload\", \"object\", \"unit\", \"begin\", \"string\", \"on\", \"inline\", \"repeat\", \"until\", \"destructor\", \"write\", \"message\", \"program\", \"with\", \"read\", \"initialization\", \"except\", \"default\", \"nil\", \"if\", \"case\", \"cdecl\", \"in\", \"downto\", \"threadvar\", \"of\", \"try\", \"pascal\", \"const\", \"external\", \"constructor\", \"type\", \"public\", \"then\", \"implementation\", \"finally\", \"published\", \"procedure\", \"absolute\", \"reintroduce\", \"operator\", \"as\", \"is\", \"abstract\", \"alias\", \"assembler\", \"bitpacked\", \"break\", \"continue\", \"cppdecl\", \"cvar\", \"enumerator\", \"experimental\", \"platform\", \"deprecated\", \"unimplemented\", \"dynamic\", \"export\", \"far16\", \"forward\", \"generic\", \"helper\", \"implements\", \"interrupt\", \"iochecks\", \"local\", \"name\", \"nodefault\", \"noreturn\", \"nostackframe\", \"oldfpccall\", \"otherwise\", \"saveregisters\", \"softfloat\", \"specialize\", \"strict\", \"unaligned\", \"varargs\"];\n const COMMENT_MODES = [hljs.C_LINE_COMMENT_MODE, hljs.COMMENT(/\\{/, /\\}/, {\n relevance: 0\n }), hljs.COMMENT(/\\(\\*/, /\\*\\)/, {\n relevance: 10\n })];\n const DIRECTIVE = {\n className: 'meta',\n variants: [{\n begin: /\\{\\$/,\n end: /\\}/\n }, {\n begin: /\\(\\*\\$/,\n end: /\\*\\)/\n }]\n };\n const STRING = {\n className: 'string',\n begin: /'/,\n end: /'/,\n contains: [{\n begin: /''/\n }]\n };\n const NUMBER = {\n className: 'number',\n relevance: 0,\n // Source: https://www.freepascal.org/docs-html/ref/refse6.html\n variants: [{\n // Regular numbers, e.g., 123, 123.456.\n match: /\\b\\d[\\d_]*(\\.\\d[\\d_]*)?/\n }, {\n // Hexadecimal notation, e.g., $7F.\n match: /\\$[\\dA-Fa-f_]+/\n }, {\n // Hexadecimal literal with no digits\n match: /\\$/,\n relevance: 0\n }, {\n // Octal notation, e.g., &42.\n match: /&[0-7][0-7_]*/\n }, {\n // Binary notation, e.g., %1010.\n match: /%[01_]+/\n }, {\n // Binary literal with no digits\n match: /%/,\n relevance: 0\n }]\n };\n const CHAR_STRING = {\n className: 'string',\n variants: [{\n match: /#\\d[\\d_]*/\n }, {\n match: /#\\$[\\dA-Fa-f][\\dA-Fa-f_]*/\n }, {\n match: /#&[0-7][0-7_]*/\n }, {\n match: /#%[01][01_]*/\n }]\n };\n const CLASS = {\n begin: hljs.IDENT_RE + '\\\\s*=\\\\s*class\\\\s*\\\\(',\n returnBegin: true,\n contains: [hljs.TITLE_MODE]\n };\n const FUNCTION = {\n className: 'function',\n beginKeywords: 'function constructor destructor procedure',\n end: /[:;]/,\n keywords: 'function constructor|10 destructor|10 procedure|10',\n contains: [hljs.TITLE_MODE, {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: [STRING, CHAR_STRING, DIRECTIVE].concat(COMMENT_MODES)\n }, DIRECTIVE].concat(COMMENT_MODES)\n };\n return {\n name: 'Delphi',\n aliases: ['dpr', 'dfm', 'pas', 'pascal'],\n case_insensitive: true,\n keywords: KEYWORDS,\n illegal: /\"|\\$[G-Zg-z]|\\/\\*|<\\/|\\|/,\n contains: [STRING, CHAR_STRING, NUMBER, CLASS, FUNCTION, DIRECTIVE].concat(COMMENT_MODES)\n };\n}\nmodule.exports = delphi;","map":{"version":3,"names":["delphi","hljs","KEYWORDS","COMMENT_MODES","C_LINE_COMMENT_MODE","COMMENT","relevance","DIRECTIVE","className","variants","begin","end","STRING","contains","NUMBER","match","CHAR_STRING","CLASS","IDENT_RE","returnBegin","TITLE_MODE","FUNCTION","beginKeywords","keywords","concat","name","aliases","case_insensitive","illegal","module","exports"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/highlight.js/lib/languages/delphi.js"],"sourcesContent":["/*\nLanguage: Delphi\nWebsite: https://www.embarcadero.com/products/delphi\nCategory: system\n*/\n\n/** @type LanguageFn */\nfunction delphi(hljs) {\n const KEYWORDS = [\n \"exports\",\n \"register\",\n \"file\",\n \"shl\",\n \"array\",\n \"record\",\n \"property\",\n \"for\",\n \"mod\",\n \"while\",\n \"set\",\n \"ally\",\n \"label\",\n \"uses\",\n \"raise\",\n \"not\",\n \"stored\",\n \"class\",\n \"safecall\",\n \"var\",\n \"interface\",\n \"or\",\n \"private\",\n \"static\",\n \"exit\",\n \"index\",\n \"inherited\",\n \"to\",\n \"else\",\n \"stdcall\",\n \"override\",\n \"shr\",\n \"asm\",\n \"far\",\n \"resourcestring\",\n \"finalization\",\n \"packed\",\n \"virtual\",\n \"out\",\n \"and\",\n \"protected\",\n \"library\",\n \"do\",\n \"xorwrite\",\n \"goto\",\n \"near\",\n \"function\",\n \"end\",\n \"div\",\n \"overload\",\n \"object\",\n \"unit\",\n \"begin\",\n \"string\",\n \"on\",\n \"inline\",\n \"repeat\",\n \"until\",\n \"destructor\",\n \"write\",\n \"message\",\n \"program\",\n \"with\",\n \"read\",\n \"initialization\",\n \"except\",\n \"default\",\n \"nil\",\n \"if\",\n \"case\",\n \"cdecl\",\n \"in\",\n \"downto\",\n \"threadvar\",\n \"of\",\n \"try\",\n \"pascal\",\n \"const\",\n \"external\",\n \"constructor\",\n \"type\",\n \"public\",\n \"then\",\n \"implementation\",\n \"finally\",\n \"published\",\n \"procedure\",\n \"absolute\",\n \"reintroduce\",\n \"operator\",\n \"as\",\n \"is\",\n \"abstract\",\n \"alias\",\n \"assembler\",\n \"bitpacked\",\n \"break\",\n \"continue\",\n \"cppdecl\",\n \"cvar\",\n \"enumerator\",\n \"experimental\",\n \"platform\",\n \"deprecated\",\n \"unimplemented\",\n \"dynamic\",\n \"export\",\n \"far16\",\n \"forward\",\n \"generic\",\n \"helper\",\n \"implements\",\n \"interrupt\",\n \"iochecks\",\n \"local\",\n \"name\",\n \"nodefault\",\n \"noreturn\",\n \"nostackframe\",\n \"oldfpccall\",\n \"otherwise\",\n \"saveregisters\",\n \"softfloat\",\n \"specialize\",\n \"strict\",\n \"unaligned\",\n \"varargs\"\n ];\n const COMMENT_MODES = [\n hljs.C_LINE_COMMENT_MODE,\n hljs.COMMENT(/\\{/, /\\}/, { relevance: 0 }),\n hljs.COMMENT(/\\(\\*/, /\\*\\)/, { relevance: 10 })\n ];\n const DIRECTIVE = {\n className: 'meta',\n variants: [\n {\n begin: /\\{\\$/,\n end: /\\}/\n },\n {\n begin: /\\(\\*\\$/,\n end: /\\*\\)/\n }\n ]\n };\n const STRING = {\n className: 'string',\n begin: /'/,\n end: /'/,\n contains: [ { begin: /''/ } ]\n };\n const NUMBER = {\n className: 'number',\n relevance: 0,\n // Source: https://www.freepascal.org/docs-html/ref/refse6.html\n variants: [\n {\n // Regular numbers, e.g., 123, 123.456.\n match: /\\b\\d[\\d_]*(\\.\\d[\\d_]*)?/ },\n {\n // Hexadecimal notation, e.g., $7F.\n match: /\\$[\\dA-Fa-f_]+/ },\n {\n // Hexadecimal literal with no digits\n match: /\\$/,\n relevance: 0 },\n {\n // Octal notation, e.g., &42.\n match: /&[0-7][0-7_]*/ },\n {\n // Binary notation, e.g., %1010.\n match: /%[01_]+/ },\n {\n // Binary literal with no digits\n match: /%/,\n relevance: 0 }\n ]\n };\n const CHAR_STRING = {\n className: 'string',\n variants: [\n { match: /#\\d[\\d_]*/ },\n { match: /#\\$[\\dA-Fa-f][\\dA-Fa-f_]*/ },\n { match: /#&[0-7][0-7_]*/ },\n { match: /#%[01][01_]*/ }\n ]\n };\n const CLASS = {\n begin: hljs.IDENT_RE + '\\\\s*=\\\\s*class\\\\s*\\\\(',\n returnBegin: true,\n contains: [ hljs.TITLE_MODE ]\n };\n const FUNCTION = {\n className: 'function',\n beginKeywords: 'function constructor destructor procedure',\n end: /[:;]/,\n keywords: 'function constructor|10 destructor|10 procedure|10',\n contains: [\n hljs.TITLE_MODE,\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: [\n STRING,\n CHAR_STRING,\n DIRECTIVE\n ].concat(COMMENT_MODES)\n },\n DIRECTIVE\n ].concat(COMMENT_MODES)\n };\n return {\n name: 'Delphi',\n aliases: [\n 'dpr',\n 'dfm',\n 'pas',\n 'pascal'\n ],\n case_insensitive: true,\n keywords: KEYWORDS,\n illegal: /\"|\\$[G-Zg-z]|\\/\\*|<\\/|\\|/,\n contains: [\n STRING,\n CHAR_STRING,\n NUMBER,\n CLASS,\n FUNCTION,\n DIRECTIVE\n ].concat(COMMENT_MODES)\n };\n}\n\nmodule.exports = delphi;\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"script","externalDependencies":[]}
|