1
|
{"version":3,"sources":["webpack:///text/node_modules/highlight.js/lib/languages/scheme.js"],"names":["module","exports","hljs","SCHEME_IDENT_RE","SCHEME_SIMPLE_NUMBER_RE","KEYWORDS","$pattern","LITERAL","className","begin","NUMBER","variants","relevance","STRING","QUOTE_STRING_MODE","COMMENT_MODES","COMMENT","IDENT","QUOTED_IDENT","BODY","endsWithParent","QUOTED_LIST","contains","end","NAME","keywords","LIST","returnBegin","endsParent","concat","name","illegal","SHEBANG"],"mappings":"wFA8MAA,EAAOC,QAnMP,SAAgBC,GACd,MAAMC,EAAkB,wCAClBC,EAA0B,0BAE1BC,EAAW,CACfC,SAAUH,EACV,eACE,ooEAmCEI,EAAU,CACdC,UAAW,UACXC,MAAO,eAAiBN,EAAkB,YAGtCO,EAAS,CACbF,UAAW,SACXG,SAAU,CACR,CACEF,MAAOL,EACPQ,UAAW,GAEb,CACEH,MApD2BL,wDAqD3BQ,UAAW,GAEb,CACEH,MAAO,sBAET,CACEA,MAAO,sBAET,CACEA,MAAO,8BAKPI,EAASX,EAAKY,kBAEdC,EAAgB,CACpBb,EAAKc,QACH,IACA,IACA,CACEJ,UAAW,IAGfV,EAAKc,QAAQ,OAAQ,SAGjBC,EAAQ,CACZR,MAAON,EACPS,UAAW,GAGPM,EAAe,CACnBV,UAAW,SACXC,MAAO,IAAON,GAGVgB,EAAO,CACXC,gBAAgB,EAChBR,UAAW,GAGPS,EAAc,CAClBV,SAAU,CACR,CACEF,MAAO,KAET,CACEA,MAAO,MAGXa,SAAU,CACR,CACEb,MAAO,MACPc,IAAK,MACLD,SAAU,CACR,OACAf,EACAM,EACAH,EACAO,EACAC,MAMFM,EAAO,CACXhB,UAAW,OACXI,UAAW,EACXH,MAAON,EACPsB,SAAUpB,GA0BNqB,EAAO,CACXf,SAAU,CACR,CACEF,MAAO,MACPc,IAAK,OAEP,CACEd,MAAO,MACPc,IAAK,QAGTD,SAAU,CAlCG,CACbb,MAAO,SACPW,gBAAgB,EAChBO,aAAa,EACbL,SAAU,CACRE,EACA,CACEI,YAAY,EACZjB,SAAU,CACR,CACEF,MAAO,KACPc,IAAK,MAEP,CACEd,MAAO,KACPc,IAAK,OAGTD,SAAU,CAAEL,MAkBdO,EACAL,IAcJ,OAVAA,EAAKG,SAAW,CACdf,EACAG,EACAG,EACAI,EACAC,EACAG,EACAK,GACAG,OAAOd,GAEF,CACLe,KAAM,SACNC,QAAS,KACTT,SAAU,CACRpB,EAAK8B,UACLtB,EACAG,EACAK,EACAG,EACAK,GACAG,OAAOd","file":"highlight/scheme.js?v=646f68927271a4f70ac5","sourcesContent":["/*\nLanguage: Scheme\nDescription: Scheme is a programming language in the Lisp family.\n (keywords based on http://community.schemewiki.org/?scheme-keywords)\nAuthor: JP Verkamp <me@jverkamp.com>\nContributors: Ivan Sagalaev <maniac@softwaremaniacs.org>\nOrigin: clojure.js\nWebsite: http://community.schemewiki.org/?what-is-scheme\nCategory: lisp\n*/\n\nfunction scheme(hljs) {\n const SCHEME_IDENT_RE = '[^\\\\(\\\\)\\\\[\\\\]\\\\{\\\\}\",\\'`;#|\\\\\\\\\\\\s]+';\n const SCHEME_SIMPLE_NUMBER_RE = '(-|\\\\+)?\\\\d+([./]\\\\d+)?';\n const SCHEME_COMPLEX_NUMBER_RE = SCHEME_SIMPLE_NUMBER_RE + '[+\\\\-]' + SCHEME_SIMPLE_NUMBER_RE + 'i';\n const KEYWORDS = {\n $pattern: SCHEME_IDENT_RE,\n 'builtin-name':\n 'case-lambda call/cc class define-class exit-handler field import ' +\n 'inherit init-field interface let*-values let-values let/ec mixin ' +\n 'opt-lambda override protect provide public rename require ' +\n 'require-for-syntax syntax syntax-case syntax-error unit/sig unless ' +\n 'when with-syntax and begin call-with-current-continuation ' +\n 'call-with-input-file call-with-output-file case cond define ' +\n 'define-syntax delay do dynamic-wind else for-each if lambda let let* ' +\n 'let-syntax letrec letrec-syntax map or syntax-rules \\' * + , ,@ - ... / ' +\n '; < <= = => > >= ` abs acos angle append apply asin assoc assq assv atan ' +\n 'boolean? caar cadr call-with-input-file call-with-output-file ' +\n 'call-with-values car cdddar cddddr cdr ceiling char->integer ' +\n 'char-alphabetic? char-ci<=? char-ci<? char-ci=? char-ci>=? char-ci>? ' +\n 'char-downcase char-lower-case? char-numeric? char-ready? char-upcase ' +\n 'char-upper-case? char-whitespace? char<=? char<? char=? char>=? char>? ' +\n 'char? close-input-port close-output-port complex? cons cos ' +\n 'current-input-port current-output-port denominator display eof-object? ' +\n 'eq? equal? eqv? eval even? exact->inexact exact? exp expt floor ' +\n 'force gcd imag-part inexact->exact inexact? input-port? integer->char ' +\n 'integer? interaction-environment lcm length list list->string ' +\n 'list->vector list-ref list-tail list? load log magnitude make-polar ' +\n 'make-rectangular make-string make-vector max member memq memv min ' +\n 'modulo negative? newline not null-environment null? number->string ' +\n 'number? numerator odd? open-input-file open-output-file output-port? ' +\n 'pair? peek-char port? positive? procedure? quasiquote quote quotient ' +\n 'rational? rationalize read read-char real-part real? remainder reverse ' +\n 'round scheme-report-environment set! set-car! set-cdr! sin sqrt string ' +\n 'string->list string->number string->symbol string-append string-ci<=? ' +\n 'string-ci<? string-ci=? string-ci>=? string-ci>? string-copy ' +\n 'string-fill! string-length string-ref string-set! string<=? string<? ' +\n 'string=? string>=? string>? string? substring symbol->string symbol? ' +\n 'tan transcript-off transcript-on truncate values vector ' +\n 'vector->list vector-fill! vector-length vector-ref vector-set! ' +\n 'with-input-from-file with-output-to-file write write-char zero?'\n };\n\n const LITERAL = {\n className: 'literal',\n begin: '(#t|#f|#\\\\\\\\' + SCHEME_IDENT_RE + '|#\\\\\\\\.)'\n };\n\n const NUMBER = {\n className: 'number',\n variants: [\n {\n begin: SCHEME_SIMPLE_NUMBER_RE,\n relevance: 0\n },\n {\n begin: SCHEME_COMPLEX_NUMBER_RE,\n relevance: 0\n },\n {\n begin: '#b[0-1]+(/[0-1]+)?'\n },\n {\n begin: '#o[0-7]+(/[0-7]+)?'\n },\n {\n begin: '#x[0-9a-f]+(/[0-9a-f]+)?'\n }\n ]\n };\n\n const STRING = hljs.QUOTE_STRING_MODE;\n\n const COMMENT_MODES = [\n hljs.COMMENT(\n ';',\n '$',\n {\n relevance: 0\n }\n ),\n hljs.COMMENT('#\\\\|', '\\\\|#')\n ];\n\n const IDENT = {\n begin: SCHEME_IDENT_RE,\n relevance: 0\n };\n\n const QUOTED_IDENT = {\n className: 'symbol',\n begin: '\\'' + SCHEME_IDENT_RE\n };\n\n const BODY = {\n endsWithParent: true,\n relevance: 0\n };\n\n const QUOTED_LIST = {\n variants: [\n {\n begin: /'/\n },\n {\n begin: '`'\n }\n ],\n contains: [\n {\n begin: '\\\\(',\n end: '\\\\)',\n contains: [\n 'self',\n LITERAL,\n STRING,\n NUMBER,\n IDENT,\n QUOTED_IDENT\n ]\n }\n ]\n };\n\n const NAME = {\n className: 'name',\n relevance: 0,\n begin: SCHEME_IDENT_RE,\n keywords: KEYWORDS\n };\n\n const LAMBDA = {\n begin: /lambda/,\n endsWithParent: true,\n returnBegin: true,\n contains: [\n NAME,\n {\n endsParent: true,\n variants: [\n {\n begin: /\\(/,\n end: /\\)/\n },\n {\n begin: /\\[/,\n end: /\\]/\n }\n ],\n contains: [ IDENT ]\n }\n ]\n };\n\n const LIST = {\n variants: [\n {\n begin: '\\\\(',\n end: '\\\\)'\n },\n {\n begin: '\\\\[',\n end: '\\\\]'\n }\n ],\n contains: [\n LAMBDA,\n NAME,\n BODY\n ]\n };\n\n BODY.contains = [\n LITERAL,\n NUMBER,\n STRING,\n IDENT,\n QUOTED_IDENT,\n QUOTED_LIST,\n LIST\n ].concat(COMMENT_MODES);\n\n return {\n name: 'Scheme',\n illegal: /\\S/,\n contains: [\n hljs.SHEBANG(),\n NUMBER,\n STRING,\n QUOTED_IDENT,\n QUOTED_LIST,\n LIST\n ].concat(COMMENT_MODES)\n };\n}\n\nmodule.exports = scheme;\n"],"sourceRoot":""}
|