Welcome to mirror list, hosted at ThFree Co, Russian Federation.

ada.js.map « highlight « js - github.com/nextcloud/text.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: c56375407aca4bd1ffa06b3afc0a69a10750525e (plain)
1
{"version":3,"sources":["webpack:///./node_modules/highlight.js/lib/languages/ada.js"],"names":["module","exports","hljs","ID_REGEX","COMMENTS","COMMENT","VAR_DECLS","begin","end","illegal","contains","beginKeywords","endsParent","className","relevance","name","case_insensitive","keywords","keyword","literal","excludeBegin","excludeEnd","returnBegin"],"mappings":"kGAiMAA,EAAOC,QA7KP,SAAaC,GAKX,MAWMC,EAAW,4BAMXC,EAAWF,EAAKG,QAAQ,KAAM,KAK9BC,EAAY,CAIhBC,MAAO,YACPC,IAAK,sBAGLC,QAhBgB,gBAiBhBC,SAAU,CACR,CAGEC,cAAe,0BACfC,YAAY,GAEd,CAEEC,UAAW,UACXF,cAAe,wEAEjB,CACEE,UAAW,OACXN,MAAOJ,EACPS,YAAY,EACZE,UAAW,KAKjB,MAAO,CACLC,KAAM,MACNC,kBAAkB,EAClBC,SAAU,CACRC,QACU,4bAOVC,QACU,cAEZT,SAAU,CACRN,EAEA,CACES,UAAW,SACXN,MAAO,IACPC,IAAK,IACLE,SAAU,CAAC,CACTH,MAAO,KACPO,UAAW,KAIf,CAEED,UAAW,SACXN,MAAO,OAET,CAEEM,UAAW,SACXN,MAhFY,8GAiFZO,UAAW,GAEb,CAEED,UAAW,SACXN,MAAO,IAAMJ,GAEf,CAEEU,UAAW,QACXN,MAAO,8DACPC,IAAK,SACLS,SAAU,eACVG,cAAc,EACdC,YAAY,EACZZ,QA1FY,iBA4Fd,CAGEF,MAAO,yDACPC,IAAK,sCACLS,SAAU,uDAGVK,aAAa,EACbZ,SACQ,CACEN,EACA,CAEES,UAAW,QACXN,MAAO,4CACPC,IAAK,eACLY,cAAc,EACdC,YAAY,EACZZ,QA/GA,iBAmHFH,EACA,CAEEO,UAAW,OACXN,MAAO,gBACPC,IAAK,aACLS,SAAU,SACVG,cAAc,EACdC,YAAY,EAEZT,YAAY,EACZH,QA9HA,mBAmId,CAGEI,UAAW,OACXN,MAAO,oBACPC,IAAK,OACLS,SAAU,OACVG,cAAc,EACdX,QA3IY,iBA+IdH","file":"highlight/ada.js?v=bce6bf48333ca265a9bd","sourcesContent":["/*\nLanguage: Ada\nAuthor: Lars Schulna <kartoffelbrei.mit.muskatnuss@gmail.org>\nDescription: Ada is a general-purpose programming language that has great support for saftey critical and real-time applications.\n             It has been developed by the DoD and thus has been used in military and safety-critical applications (like civil aviation).\n             The first version appeared in the 80s, but it's still actively developed today with\n             the newest standard being Ada2012.\n*/\n\n// We try to support full Ada2012\n//\n// We highlight all appearances of types, keywords, literals (string, char, number, bool)\n// and titles (user defined function/procedure/package)\n// CSS classes are set accordingly\n//\n// Languages causing problems for language detection:\n// xml (broken by Foo : Bar type), elm (broken by Foo : Bar type), vbscript-html (broken by body keyword)\n// sql (ada default.txt has a lot of sql keywords)\n\n/** @type LanguageFn */\nfunction ada(hljs) {\n  // Regular expression for Ada numeric literals.\n  // stolen form the VHDL highlighter\n\n  // Decimal literal:\n  const INTEGER_RE = '\\\\d(_|\\\\d)*';\n  const EXPONENT_RE = '[eE][-+]?' + INTEGER_RE;\n  const DECIMAL_LITERAL_RE = INTEGER_RE + '(\\\\.' + INTEGER_RE + ')?' + '(' + EXPONENT_RE + ')?';\n\n  // Based literal:\n  const BASED_INTEGER_RE = '\\\\w+';\n  const BASED_LITERAL_RE = INTEGER_RE + '#' + BASED_INTEGER_RE + '(\\\\.' + BASED_INTEGER_RE + ')?' + '#' + '(' + EXPONENT_RE + ')?';\n\n  const NUMBER_RE = '\\\\b(' + BASED_LITERAL_RE + '|' + DECIMAL_LITERAL_RE + ')';\n\n  // Identifier regex\n  const ID_REGEX = '[A-Za-z](_?[A-Za-z0-9.])*';\n\n  // bad chars, only allowed in literals\n  const BAD_CHARS = `[]\\\\{\\\\}%#'\"`;\n\n  // Ada doesn't have block comments, only line comments\n  const COMMENTS = hljs.COMMENT('--', '$');\n\n  // variable declarations of the form\n  // Foo : Bar := Baz;\n  // where only Bar will be highlighted\n  const VAR_DECLS = {\n    // TODO: These spaces are not required by the Ada syntax\n    // however, I have yet to see handwritten Ada code where\n    // someone does not put spaces around :\n    begin: '\\\\s+:\\\\s+',\n    end: '\\\\s*(:=|;|\\\\)|=>|$)',\n    // endsWithParent: true,\n    // returnBegin: true,\n    illegal: BAD_CHARS,\n    contains: [\n      {\n        // workaround to avoid highlighting\n        // named loops and declare blocks\n        beginKeywords: 'loop for declare others',\n        endsParent: true\n      },\n      {\n        // properly highlight all modifiers\n        className: 'keyword',\n        beginKeywords: 'not null constant access function procedure in out aliased exception'\n      },\n      {\n        className: 'type',\n        begin: ID_REGEX,\n        endsParent: true,\n        relevance: 0\n      }\n    ]\n  };\n\n  return {\n    name: 'Ada',\n    case_insensitive: true,\n    keywords: {\n      keyword:\n                'abort else new return abs elsif not reverse abstract end ' +\n                'accept entry select access exception of separate aliased exit or some ' +\n                'all others subtype and for out synchronized array function overriding ' +\n                'at tagged generic package task begin goto pragma terminate ' +\n                'body private then if procedure type case in protected constant interface ' +\n                'is raise use declare range delay limited record when delta loop rem while ' +\n                'digits renames with do mod requeue xor',\n      literal:\n                'True False'\n    },\n    contains: [\n      COMMENTS,\n      // strings \"foobar\"\n      {\n        className: 'string',\n        begin: /\"/,\n        end: /\"/,\n        contains: [{\n          begin: /\"\"/,\n          relevance: 0\n        }]\n      },\n      // characters ''\n      {\n        // character literals always contain one char\n        className: 'string',\n        begin: /'.'/\n      },\n      {\n        // number literals\n        className: 'number',\n        begin: NUMBER_RE,\n        relevance: 0\n      },\n      {\n        // Attributes\n        className: 'symbol',\n        begin: \"'\" + ID_REGEX\n      },\n      {\n        // package definition, maybe inside generic\n        className: 'title',\n        begin: '(\\\\bwith\\\\s+)?(\\\\bprivate\\\\s+)?\\\\bpackage\\\\s+(\\\\bbody\\\\s+)?',\n        end: '(is|$)',\n        keywords: 'package body',\n        excludeBegin: true,\n        excludeEnd: true,\n        illegal: BAD_CHARS\n      },\n      {\n        // function/procedure declaration/definition\n        // maybe inside generic\n        begin: '(\\\\b(with|overriding)\\\\s+)?\\\\b(function|procedure)\\\\s+',\n        end: '(\\\\bis|\\\\bwith|\\\\brenames|\\\\)\\\\s*;)',\n        keywords: 'overriding function procedure with is renames return',\n        // we need to re-match the 'function' keyword, so that\n        // the title mode below matches only exactly once\n        returnBegin: true,\n        contains:\n                [\n                  COMMENTS,\n                  {\n                    // name of the function/procedure\n                    className: 'title',\n                    begin: '(\\\\bwith\\\\s+)?\\\\b(function|procedure)\\\\s+',\n                    end: '(\\\\(|\\\\s+|$)',\n                    excludeBegin: true,\n                    excludeEnd: true,\n                    illegal: BAD_CHARS\n                  },\n                  // 'self'\n                  // // parameter types\n                  VAR_DECLS,\n                  {\n                    // return type\n                    className: 'type',\n                    begin: '\\\\breturn\\\\s+',\n                    end: '(\\\\s+|;|$)',\n                    keywords: 'return',\n                    excludeBegin: true,\n                    excludeEnd: true,\n                    // we are done with functions\n                    endsParent: true,\n                    illegal: BAD_CHARS\n\n                  }\n                ]\n      },\n      {\n        // new type declarations\n        // maybe inside generic\n        className: 'type',\n        begin: '\\\\b(sub)?type\\\\s+',\n        end: '\\\\s+',\n        keywords: 'type',\n        excludeBegin: true,\n        illegal: BAD_CHARS\n      },\n\n      // see comment above the definition\n      VAR_DECLS\n\n      // no markup\n      // relevance boosters for small snippets\n      // {begin: '\\\\s*=>\\\\s*'},\n      // {begin: '\\\\s*:=\\\\s*'},\n      // {begin: '\\\\s+:=\\\\s+'},\n    ]\n  };\n}\n\nmodule.exports = ada;\n"],"sourceRoot":""}