Вход Регистрация
Файл: error-kitty/node_modules/highlight.js/lib/languages/elixir.js
Строк: 83
<?php
module
.exports = function(hljs) {
  var 
ELIXIR_IDENT_RE '[a-zA-Z_][a-zA-Z0-9_]*(\!|\?)?';
  var 
ELIXIR_METHOD_RE '[a-zA-Z_]\w*[!?=]?|[-+~]\@|<<|>>|=~|===?|<=>|[<>]=?|\*\*|[-/+%^&*~`|]|\[\]=?';
  var 
ELIXIR_KEYWORDS =
    
'and false then defined module in return redo retry end for true self when ' +
    
'next until do begin unless nil break not case cond alias while ensure or ' +
    
'include use alias fn quote';
  var 
SUBST = {
    
className'subst',
    
begin'#\{'end'}',
    
lexemesELIXIR_IDENT_RE,
    
keywordsELIXIR_KEYWORDS
  
};
  var 
STRING = {
    
className'string',
    
contains: [hljs.BACKSLASH_ESCAPESUBST],
    
variants: [
      {
        
begin: /'/, end: /'/
      },
      {
        
begin: /"/, end: /"/
      }
    ]
  };
  var 
PARAMS = {
    
endsWithParenttruereturnEndtrue,
    
lexemesELIXIR_IDENT_RE,
    
keywordsELIXIR_KEYWORDS,
    
relevance0
  
};
  var FUNCTION = {
    
className'function',
    
beginKeywords'def defmacro'end: /bdob/,
    
contains: [
      
hljs.inherit(hljs.TITLE_MODE, {
        
beginELIXIR_METHOD_RE,
        
startsPARAMS
      
})
    ]
  };
  var CLASS = 
hljs.inherit(FUNCTION, {
    
className'class',
    
beginKeywords'defmodule defrecord'end: /bdob|$|;/
  })
  var 
ELIXIR_DEFAULT_CONTAINS = [
    
STRING,
    
hljs.HASH_COMMENT_MODE,
    CLASS,
    FUNCTION,
    {
      
className'constant',
      
begin'(\b[A-Z_]\w*(.)?)+',
      
relevance0
    
},
    {
      
className'symbol',
      
begin':',
      
contains: [STRING, {beginELIXIR_METHOD_RE}],
      
relevance0
    
},
    {
      
className'symbol',
      
beginELIXIR_IDENT_RE ':',
      
relevance0
    
},
    {
      
className'number',
      
begin'(\b0[0-7_]+)|(\b0x[0-9a-fA-F_]+)|(\b[1-9][0-9_]*(\.[0-9_]+)?)|[0_]\b',
      
relevance0
    
},
    {
      
className'variable',
      
begin'(\$\W)|((\$|\@\@?)(\w+))'
    
},
    {
      
begin'->'
    
},
    { 
// regexp container
      
begin'(' hljs.RE_STARTERS_RE ')\s*',
      
contains: [
        
hljs.HASH_COMMENT_MODE,
        {
          
className'regexp',
          
illegal'\n',
          
contains: [hljs.BACKSLASH_ESCAPESUBST],
          
variants: [
            {
              
begin'/'end'/[a-z]*'
            
},
            {
              
begin'%r\['end'\][a-z]*'
            
}
          ]
        }
      ],
      
relevance0
    
}
  ];
  
SUBST.contains ELIXIR_DEFAULT_CONTAINS;
  
PARAMS.contains ELIXIR_DEFAULT_CONTAINS;

  return {
    
lexemesELIXIR_IDENT_RE,
    
keywordsELIXIR_KEYWORDS,
    
containsELIXIR_DEFAULT_CONTAINS
  
};
};
?>
Онлайн: 2
Реклама