]>
luflow.net public git repositories - flow-web.git/blob - static/highlight/languages/ada.min.js
1 /*! `ada` grammar compiled for Highlight.js 11.11.1 */
2 (()=>{var e
=(()=>{"use strict";return e
=>{
3 const n
="\\d(_|\\d)*",s
="[eE][-+]?"+n
,a
="\\b("+n
+"#\\w+(\\.\\w+)?#("+s
+")?|"+n
+"(\\."+n
+")?("+s
+")?)",r
="[A-Za-z](_?[A-Za-z0-9.])*",i
="[]\\{\\}%#'\"",t
=e
.COMMENT("--","$"),c
={
4 begin:"\\s+:\\s+",end:"\\s*(:=|;|\\)|=>|$)",illegal:i
,contains:[{
5 beginKeywords:"loop for declare others",endsParent:!0},{className:"keyword",
6 beginKeywords:"not null constant access function procedure in out aliased exception"
7 },{className:"type",begin:r
,endsParent:!0,relevance:0}]};return{name:"Ada",
8 case_insensitive:!0,keywords:{
9 keyword:["abort","else","new","return","abs","elsif","not","reverse","abstract","end","accept","entry","select","access","exception","of","separate","aliased","exit","or","some","all","others","subtype","and","for","out","synchronized","array","function","overriding","at","tagged","generic","package","task","begin","goto","pragma","terminate","body","private","then","if","procedure","type","case","in","protected","constant","interface","is","raise","use","declare","range","delay","limited","record","when","delta","loop","rem","while","digits","renames","with","do","mod","requeue","xor"],
10 literal:["True","False"]},contains:[t
,{className:"string",begin:/"/,end:/"/,
11 contains:[{begin:/""/,relevance:0}]},{className:"string
",begin:/'.'/},{
12 className:"number
",begin:a,relevance:0},{className:"symbol
",begin:"'"+r},{
14 begin:"(\\bwith\\s+)?(\\bprivate\\s+)?\\bpackage\\s+(\\bbody\\s+)?",
15 end:"(is|$)",keywords:"package body",excludeBegin:!0,excludeEnd:!0,illegal:i},{
16 begin:"(\\b(with|overriding)\\s+)?\\b(function|procedure)\\s+",
17 end:"(\\bis|\\bwith|\\brenames|\\)\\s*;)",
18 keywords:"overriding function procedure with is renames return",returnBegin:!0,
19 contains:[t,{className:"title",
20 begin:"(\\bwith\\s+)?\\b(function|procedure)\\s+",end:"(\\(|\\s+|$)",
21 excludeBegin:!0,excludeEnd:!0,illegal:i},c,{className:"type",
22 begin:"\\breturn\\s+",end:"(\\s+|;|$)",keywords:"return",excludeBegin:!0,
23 excludeEnd:!0,endsParent:!0,illegal:i}]},{className:"type",
24 begin:"\\b(sub)?type\\s+",end:"\\s+",keywords:"type",excludeBegin:!0,illegal:i
25 },c]}}})();hljs.registerLanguage("ada",e)})();