Class: Rouge::Lexers::ECL

Inherits:
RegexLexer show all
Defined in:
lib/rouge/lexers/ecl.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, get_state, #get_state, #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, assert_utf8!, #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, lookup_fancy, mimetypes, option, option_docs, #reset!, #stream_tokens, #string_option, tag, #tag, title, #token_option, #with

Methods included from Token::Tokens

token

Constructor Details

This class inherits a constructor from Rouge::Lexer

Class Method Details

.class_firstObject



16
17
18
19
20
# File 'lib/rouge/lexers/ecl.rb', line 16

def self.class_first
  @class_first ||= Set.new %w(
    file date str math metaphone metaphone3 uni audit blas system
  )
end

.class_secondObject



22
23
24
25
26
# File 'lib/rouge/lexers/ecl.rb', line 22

def self.class_second
  @class_second ||= Set.new %w(
    debug email job log thorlib util workunit
  )
end

.functionsObject



28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/rouge/lexers/ecl.rb', line 28

def self.functions
  @functions ||= Set.new %w(
    abs acos aggregate allnodes apply ascii asin asstring atan _token ave
    case catch choose choosen choosesets clustersize combine correlation
    cos cosh count covariance cron dataset dedup define denormalize
    dictionary distribute distributed distribution ebcdic enth error
    evaluate event eventextra eventname exists exp failcode failmessage
    fetch fromunicode fromxml getenv getisvalid global graph group hash
    hashcrc having httpcall httpheader if iff index intformat isvalid
    iterate join keyunicode length library limit ln local log loop map
    matched matchlength matchposition matchtext matchunicode max merge
    mergejoin min nofold nolocal nonempty normalize parse pipe power
    preload process project pull random range rank ranked realformat
    recordof regexfind regexreplace regroup rejected rollup round roundup
    row rowdiff sample set sin sinh sizeof soapcall sort sorted sqrt
    stepped stored sum table tan tanh thisnode topn tounicode toxml
    transfer transform trim truncate typeof ungroup unicodeorder variance
    which workunit xmldecode xmlencode xmltext xmlunicode apply assert
    build buildindex evaluate fail keydiff keypatch loadxml nothor notify
    output parallel sequential soapcall wait
  )
end

.keywordsObject



51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/rouge/lexers/ecl.rb', line 51

def self.keywords
  @keywords ||= Set.new %w(
    and or in not all any as from atmost before best between case const
    counter csv descend encrypt end endmacro enum except exclusive expire
    export extend fail few first flat full function functionmacro group
    heading hole ifblock import joined keep keyed last left limit load
    local locale lookup many maxcount maxlength _token module interface
    named nocase noroot noscan nosort of only opt outer overwrite packed
    partition penalty physicallength pipe quote record repeat return
    right rows scan self separator service shared skew skip sql store
    terminator thor threshold token transform trim type unicodeorder
    unsorted validate virtual whole wild within xml xpath after cluster
    compressed compression default encoding escape fileposition forward
    grouped inner internal linkcounted literal lzw mofn multiple
    namespace wnotrim noxpath onfail prefetch retry rowset scope smart
    soapaction stable timelimit timeout unordered unstable update use
    width
  )
end

.templateObject



71
72
73
74
75
76
77
78
79
# File 'lib/rouge/lexers/ecl.rb', line 71

def self.template
  @template ||= Set.new %w(
    append apply break constant debug declare demangle else elseif end
    endregion error expand export exportxml for forall getdatatype if
    ifdefined inmodule isdefined isvalid line link loop mangle onwarning
    option region set stored text trace uniquename warning webservice
    workunit loadxml
  )
end

.typeObject



81
82
83
84
85
86
87
# File 'lib/rouge/lexers/ecl.rb', line 81

def self.type
  @type ||= Set.new %w(
    ascii big_endian boolean data decimal ebcdic grouped integer
    linkcounted pattern qstring real record rule set of streamed string
    token udecimal unicode utf8 unsigned varstring varunicode
  )
end

.typedObject



89
90
91
92
93
# File 'lib/rouge/lexers/ecl.rb', line 89

def self.typed
  @typed ||= Set.new %w(
    data string qstring varstring varunicode unicode utf8
  )
end