Class: Rouge::Lexers::Q

Inherits:
RegexLexer show all
Defined in:
lib/rouge/lexers/q.rb

Constant Summary

Constants inherited from RegexLexer

RegexLexer::MAX_NULL_SCANS

Constants included from Token::Tokens

Token::Tokens::Num, Token::Tokens::Str

Instance Attribute Summary

Attributes inherited from Rouge::Lexer

#options

Class Method Summary collapse

Methods inherited from RegexLexer

append, #delegate, #goto, #group, #groups, #in_state?, #pop!, prepend, #push, #recurse, replace_state, #reset!, #reset_stack, #stack, start, start_procs, #state, state, #state?, state_definitions, states, #step, #stream_tokens, #token

Methods inherited from Rouge::Lexer

aliases, all, #as_bool, #as_lexer, #as_list, #as_string, #as_token, #bool_option, #continue_lex, continue_lex, debug_enabled?, demo, demo_file, desc, detect?, detectable?, disable_debug!, enable_debug!, filenames, find, find_fancy, guess, guess_by_filename, guess_by_mimetype, guess_by_source, guesses, #hash_option, #initialize, #lex, lex, #lexer_option, #list_option, mimetypes, option, option_docs, #reset!, #stream_tokens, #string_option, tag, #tag, title, #token_option

Methods included from Token::Tokens

token

Constructor Details

This class inherits a constructor from Rouge::Lexer

Class Method Details

.builtinsObject


27
28
29
30
31
32
33
34
35
# File 'lib/rouge/lexers/q.rb', line 27

def self.builtins
  @builtins ||= %w[
    first enlist value type get set count string key max min sum prd last flip distinct raze neg
    desc differ dsave dev eval exit exp fills fkeys floor getenv group gtime hclose hcount hdel hopen hsym
    iasc idesc inv keys load log lsq ltime ltrim maxs md5 med meta mins next parse plist prds prev rand rank ratios
    read0 read1 reciprocal reverse rload rotate rsave rtrim save sdev show signum sin sqrt ssr sums svar system
    tables tan til trim txf ungroup var view views wj wj1 ww
  ]
end

.keywordsObject


15
16
17
# File 'lib/rouge/lexers/q.rb', line 15

def self.keywords
  @keywords ||= %w[do if while select update delete exec from by]
end

.word_operatorsObject


19
20
21
22
23
24
25
# File 'lib/rouge/lexers/q.rb', line 19

def self.word_operators
  @word_operators ||= %w[
    and or except inter like each cross vs sv within where in asof bin binr cor cov cut ej fby
    div ij insert lj ljf mavg mcount mdev mmax mmin mmu mod msum over prior peach pj scan scov setenv ss
    sublist uj union upsert wavg wsum xasc xbar xcol xcols xdesc xexp xgroup xkey xlog xprev xrank
  ]
end