rouge 2.0.7 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +7 -9
  3. data/lib/rouge.rb +1 -0
  4. data/lib/rouge/cli.rb +20 -0
  5. data/lib/rouge/demos/awk +4 -0
  6. data/lib/rouge/demos/console +6 -0
  7. data/lib/rouge/demos/digdag +19 -0
  8. data/lib/rouge/demos/dot +5 -0
  9. data/lib/rouge/demos/graphql +17 -0
  10. data/lib/rouge/demos/hylang +10 -0
  11. data/lib/rouge/demos/igorpro +9 -0
  12. data/lib/rouge/demos/irb +4 -0
  13. data/lib/rouge/demos/irb_output +2 -0
  14. data/lib/rouge/demos/lasso +12 -0
  15. data/lib/rouge/demos/mosel +10 -0
  16. data/lib/rouge/demos/plist +142 -0
  17. data/lib/rouge/demos/pony +17 -0
  18. data/lib/rouge/demos/q +2 -0
  19. data/lib/rouge/demos/sieve +10 -0
  20. data/lib/rouge/demos/tsx +17 -0
  21. data/lib/rouge/demos/turtle +0 -0
  22. data/lib/rouge/demos/wollok +11 -0
  23. data/lib/rouge/formatters/html_inline.rb +9 -1
  24. data/lib/rouge/formatters/html_pygments.rb +2 -2
  25. data/lib/rouge/formatters/html_table.rb +1 -1
  26. data/lib/rouge/formatters/terminal256.rb +1 -1
  27. data/lib/rouge/lexer.rb +124 -37
  28. data/lib/rouge/lexers/abap.rb +2 -2
  29. data/lib/rouge/lexers/apache.rb +1 -1
  30. data/lib/rouge/lexers/awk.rb +161 -0
  31. data/lib/rouge/lexers/clojure.rb +2 -2
  32. data/lib/rouge/lexers/coffeescript.rb +1 -1
  33. data/lib/rouge/lexers/console.rb +136 -0
  34. data/lib/rouge/lexers/csharp.rb +26 -7
  35. data/lib/rouge/lexers/digdag.rb +72 -0
  36. data/lib/rouge/lexers/docker.rb +1 -1
  37. data/lib/rouge/lexers/dot.rb +68 -0
  38. data/lib/rouge/lexers/elixir.rb +52 -27
  39. data/lib/rouge/lexers/fortran.rb +56 -28
  40. data/lib/rouge/lexers/fsharp.rb +1 -1
  41. data/lib/rouge/lexers/gherkin/keywords.rb +4 -4
  42. data/lib/rouge/lexers/graphql.rb +243 -0
  43. data/lib/rouge/lexers/groovy.rb +5 -1
  44. data/lib/rouge/lexers/haml.rb +19 -24
  45. data/lib/rouge/lexers/html.rb +48 -4
  46. data/lib/rouge/lexers/hylang.rb +93 -0
  47. data/lib/rouge/lexers/igorpro.rb +407 -0
  48. data/lib/rouge/lexers/irb.rb +66 -0
  49. data/lib/rouge/lexers/javascript.rb +21 -10
  50. data/lib/rouge/lexers/json.rb +3 -2
  51. data/lib/rouge/lexers/json_doc.rb +6 -0
  52. data/lib/rouge/lexers/jsx.rb +2 -1
  53. data/lib/rouge/lexers/lasso.rb +217 -0
  54. data/lib/rouge/lexers/lasso/keywords.yml +446 -0
  55. data/lib/rouge/lexers/lua.rb +3 -0
  56. data/lib/rouge/lexers/lua/builtins.rb +1 -1
  57. data/lib/rouge/lexers/markdown.rb +2 -3
  58. data/lib/rouge/lexers/matlab/builtins.rb +1 -1
  59. data/lib/rouge/lexers/moonscript.rb +8 -4
  60. data/lib/rouge/lexers/mosel.rb +231 -0
  61. data/lib/rouge/lexers/ocaml.rb +9 -20
  62. data/lib/rouge/lexers/php.rb +40 -20
  63. data/lib/rouge/lexers/php/builtins.rb +27 -37
  64. data/lib/rouge/lexers/plain_text.rb +4 -3
  65. data/lib/rouge/lexers/plist.rb +49 -0
  66. data/lib/rouge/lexers/pony.rb +93 -0
  67. data/lib/rouge/lexers/powershell.rb +36 -0
  68. data/lib/rouge/lexers/properties.rb +2 -2
  69. data/lib/rouge/lexers/q.rb +124 -0
  70. data/lib/rouge/lexers/r.rb +2 -2
  71. data/lib/rouge/lexers/ruby.rb +26 -13
  72. data/lib/rouge/lexers/rust.rb +7 -5
  73. data/lib/rouge/lexers/sed.rb +4 -2
  74. data/lib/rouge/lexers/shell.rb +38 -16
  75. data/lib/rouge/lexers/sieve.rb +96 -0
  76. data/lib/rouge/lexers/sml.rb +3 -2
  77. data/lib/rouge/lexers/tsx.rb +19 -0
  78. data/lib/rouge/lexers/turtle.rb +0 -0
  79. data/lib/rouge/lexers/typescript.rb +3 -27
  80. data/lib/rouge/lexers/typescript/common.rb +33 -0
  81. data/lib/rouge/lexers/viml/keywords.rb +2 -2
  82. data/lib/rouge/lexers/wollok.rb +107 -0
  83. data/lib/rouge/lexers/xml.rb +1 -1
  84. data/lib/rouge/lexers/yaml.rb +4 -1
  85. data/lib/rouge/regex_lexer.rb +1 -0
  86. data/lib/rouge/template_lexer.rb +3 -5
  87. data/lib/rouge/theme.rb +14 -4
  88. data/lib/rouge/themes/igor_pro.rb +20 -0
  89. data/lib/rouge/themes/pastie.rb +69 -0
  90. data/lib/rouge/themes/thankful_eyes.rb +8 -5
  91. data/lib/rouge/version.rb +1 -1
  92. metadata +40 -6
  93. data/lib/rouge/demos/shell_session +0 -10
  94. data/lib/rouge/lexers/shell_session.rb +0 -29
@@ -0,0 +1,66 @@
1
+ # -*- coding: utf-8 -*- #
2
+
3
+ module Rouge
4
+ module Lexers
5
+ load_lexer 'console.rb'
6
+
7
+ class IRBLexer < ConsoleLexer
8
+ tag 'irb'
9
+ aliases 'pry'
10
+
11
+ desc 'Shell sessions in IRB or Pry'
12
+
13
+ # unlike the superclass, we do not accept any options
14
+ @option_docs = {}
15
+
16
+ def output_lexer
17
+ @output_lexer ||= IRBOutputLexer.new(@options)
18
+ end
19
+
20
+ def lang_lexer
21
+ @lang_lexer ||= Ruby.new(@options)
22
+ end
23
+
24
+ def prompt_regex
25
+ /^.*?(irb|pry).*?[>"*]/
26
+ end
27
+
28
+ def allow_comments?
29
+ true
30
+ end
31
+ end
32
+
33
+ load_lexer 'ruby.rb'
34
+ class IRBOutputLexer < Ruby
35
+ tag 'irb_output'
36
+
37
+ start do
38
+ push :stdout
39
+ end
40
+
41
+ state :has_irb_output do
42
+ rule %r(=>), Punctuation, :pop!
43
+ rule /.+?(\n|$)/, Generic::Output
44
+ end
45
+
46
+ state :irb_error do
47
+ rule /.+?(\n|$)/, Generic::Error
48
+ mixin :has_irb_output
49
+ end
50
+
51
+ state :stdout do
52
+ rule /\w+?(Error|Exception):.+?(\n|$)/, Generic::Error, :irb_error
53
+ mixin :has_irb_output
54
+ end
55
+
56
+ prepend :root do
57
+ rule /#</, Keyword::Type, :irb_object
58
+ end
59
+
60
+ state :irb_object do
61
+ rule />/, Keyword::Type, :pop!
62
+ mixin :root
63
+ end
64
+ end
65
+ end
66
+ end
@@ -97,22 +97,26 @@ module Rouge
97
97
 
98
98
  def self.keywords
99
99
  @keywords ||= Set.new %w(
100
- for in while do break return continue switch case default
100
+ for in of while do break return continue switch case default
101
101
  if else throw try catch finally new delete typeof instanceof
102
- void this yield
102
+ void this yield import export from as async super this
103
103
  )
104
104
  end
105
105
 
106
106
  def self.declarations
107
- @declarations ||= Set.new %w(var let with function)
107
+ @declarations ||= Set.new %w(
108
+ var let const with function class
109
+ extends constructor get set
110
+ )
108
111
  end
109
112
 
110
113
  def self.reserved
111
114
  @reserved ||= Set.new %w(
112
- abstract boolean byte char class const debugger double enum
113
- export extends final float goto implements import int interface
115
+ abstract boolean byte char debugger double enum
116
+ final float goto implements int interface
114
117
  long native package private protected public short static
115
- super synchronized throws transient volatile
118
+ synchronized throws transient volatile
119
+ eval arguments await
116
120
  )
117
121
  end
118
122
 
@@ -125,8 +129,13 @@ module Rouge
125
129
  Array Boolean Date Error Function Math netscape
126
130
  Number Object Packages RegExp String sun decodeURI
127
131
  decodeURIComponent encodeURI encodeURIComponent
128
- Error eval isFinite isNaN parseFloat parseInt document this
129
- window
132
+ Error eval isFinite isNaN parseFloat parseInt
133
+ document window navigator self global
134
+ Promise Set Map WeakSet WeakMap Symbol Proxy Reflect
135
+ Int8Array Uint8Array Uint8ClampedArray
136
+ Int16Array Uint16Array Uint16ClampedArray
137
+ Int32Array Uint32Array Uint32ClampedArray
138
+ Float32Array Float64Array DataView ArrayBuffer
130
139
  )
131
140
  end
132
141
 
@@ -138,7 +147,6 @@ module Rouge
138
147
 
139
148
  state :root do
140
149
  rule /\A\s*#!.*?\n/m, Comment::Preproc, :statement
141
- rule /\n/, Text, :statement
142
150
  rule %r((?<=\n)(?=\s|/|<!--)), Text, :expr_start
143
151
  mixin :comments_and_whitespace
144
152
  rule %r(\+\+ | -- | ~ | && | \|\| | \\(?=\n) | << | >>>? | ===
@@ -186,8 +194,11 @@ module Rouge
186
194
  end
187
195
 
188
196
  rule /[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?/, Num::Float
189
- rule /0x[0-9a-fA-F]+/, Num::Hex
197
+ rule /0x[0-9a-fA-F]+/i, Num::Hex
198
+ rule /0o[0-7][0-7_]*/i, Num::Oct
199
+ rule /0b[01][01_]*/i, Num::Bin
190
200
  rule /[0-9]+/, Num::Integer
201
+
191
202
  rule /"(\\[\\"]|[^"])*"/, Str::Double
192
203
  rule /'(\\[\\']|[^'])*'/, Str::Single
193
204
  rule /:/, Punctuation
@@ -3,6 +3,7 @@
3
3
  module Rouge
4
4
  module Lexers
5
5
  class JSON < RegexLexer
6
+ title 'JSON'
6
7
  desc "JavaScript Object Notation (json.org)"
7
8
  tag 'json'
8
9
  filenames '*.json'
@@ -14,8 +15,8 @@ module Rouge
14
15
  rule /"/, Str::Double, :string
15
16
  rule /(?:true|false|null)\b/, Keyword::Constant
16
17
  rule /[{},:\[\]]/, Punctuation
17
- rule /-?(?:0|[1-9]\d*)\.\d+(?:e[+-]\d+)?/i, Num::Float
18
- rule /-?(?:0|[1-9]\d*)(?:e[+-]\d+)?/i, Num::Integer
18
+ rule /-?(?:0|[1-9]\d*)\.\d+(?:e[+-]?\d+)?/i, Num::Float
19
+ rule /-?(?:0|[1-9]\d*)(?:e[+-]?\d+)?/i, Num::Integer
19
20
  end
20
21
 
21
22
  state :string do
@@ -9,6 +9,12 @@ module Rouge
9
9
  tag 'json-doc'
10
10
 
11
11
  prepend :root do
12
+ rule /([$\w]+)(\s*)(:)/ do
13
+ groups Name::Attribute, Text, Punctuation
14
+ end
15
+
16
+ rule %r(/[*].*?[*]/), Comment
17
+
12
18
  rule %r(//.*?$), Comment::Single
13
19
  rule /(\.\.\.)/, Comment::Single
14
20
  end
@@ -3,7 +3,8 @@ module Rouge
3
3
  load_lexer 'javascript.rb'
4
4
 
5
5
  class JSX < Javascript
6
- desc 'jsx'
6
+ title 'JSX'
7
+ desc 'React JSX (https://facebook.github.io/react/)'
7
8
  tag 'jsx'
8
9
  aliases 'jsx', 'react'
9
10
  filenames '*.jsx'
@@ -0,0 +1,217 @@
1
+ # -*- coding: utf-8 -*- #
2
+
3
+ require 'yaml'
4
+
5
+ module Rouge
6
+ module Lexers
7
+ class Lasso < TemplateLexer
8
+ title "Lasso"
9
+ desc "The Lasso programming language (lassosoft.com)"
10
+ tag 'lasso'
11
+ aliases 'lassoscript'
12
+ filenames '*.lasso', '*.lasso[89]'
13
+ mimetypes 'text/x-lasso', 'text/html+lasso', 'application/x-httpd-lasso'
14
+
15
+ option :start_inline, 'Whether to start inline instead of requiring <?lasso or ['
16
+
17
+ def self.analyze_text(text)
18
+ rv = 0.0
19
+ rv += 1 if text.shebang?('lasso9')
20
+ rv += 0.4 if text =~ /<\?(lasso(script)?|=)|no_square_brackets|noprocess/i
21
+ rv += 0.2 if text =~ /define(_tag|_type|\s)/i
22
+ return rv
23
+ end
24
+
25
+ def initialize(*)
26
+ super
27
+
28
+ @start_inline = bool_option(:start_inline)
29
+ end
30
+
31
+ def start_inline?
32
+ @start_inline
33
+ end
34
+
35
+ start do
36
+ push :lasso if start_inline?
37
+ end
38
+
39
+ class << self
40
+ attr_reader :keywords
41
+ end
42
+
43
+ # Load Lasso keywords from separate YML file
44
+ @keywords = ::YAML.load_file(Pathname.new(__FILE__).dirname.join('lasso/keywords.yml')).tap do |h|
45
+ h.each do |k,v|
46
+ h[k] = Set.new v
47
+ end
48
+ end
49
+
50
+ id = /[a-z_][\w.]*/i
51
+
52
+ state :root do
53
+ rule /^#![ \S]+lasso9\b/, Comment::Preproc, :lasso
54
+ rule(/(?=\[|<)/) { push :delimiters }
55
+ rule /\s+/, Text::Whitespace
56
+ rule(//) { push :delimiters; push :lassofile }
57
+ end
58
+
59
+ state :delimiters do
60
+ rule /\[no_square_brackets\]/, Comment::Preproc, :nosquarebrackets
61
+ rule /\[noprocess\]/, Comment::Preproc, :noprocess
62
+ rule /\[/, Comment::Preproc, :squarebrackets
63
+ rule /<\?(lasso(script)?|=)/i, Comment::Preproc, :anglebrackets
64
+ rule(/([^\[<]|<!--.*?-->|<(script|style).*?\2>|<(?!\?(lasso(script)?|=)))+/im) { delegate parent }
65
+ end
66
+
67
+ state :nosquarebrackets do
68
+ rule /\[noprocess\]/, Comment::Preproc, :noprocess
69
+ rule /<\?(lasso(script)?|=)/i, Comment::Preproc, :anglebrackets
70
+ rule(/([^\[<]|<!--.*?-->|<(script|style).*?\2>|<(?!\?(lasso(script)?|=))|\[(?!noprocess))+/im) { delegate parent }
71
+ end
72
+
73
+ state :noprocess do
74
+ rule %r(\[/noprocess\]), Comment::Preproc, :pop!
75
+ rule(%r(([^\[]|\[(?!/noprocess))+)i) { delegate parent }
76
+ end
77
+
78
+ state :squarebrackets do
79
+ rule /\]/, Comment::Preproc, :pop!
80
+ mixin :lasso
81
+ end
82
+
83
+ state :anglebrackets do
84
+ rule /\?>/, Comment::Preproc, :pop!
85
+ mixin :lasso
86
+ end
87
+
88
+ state :lassofile do
89
+ rule /\]|\?>/, Comment::Preproc, :pop!
90
+ mixin :lasso
91
+ end
92
+
93
+ state :whitespacecomments do
94
+ rule /\s+/, Text
95
+ rule %r(//.*?\n), Comment::Single
96
+ rule %r(/\*\*!.*?\*/)m, Comment::Doc
97
+ rule %r(/\*.*?\*/)m, Comment::Multiline
98
+ end
99
+
100
+ state :lasso do
101
+ mixin :whitespacecomments
102
+
103
+ # literals
104
+ rule /\d*\.\d+(e[+-]?\d+)?/i, Num::Float
105
+ rule /0x[\da-f]+/i, Num::Hex
106
+ rule /\d+/, Num::Integer
107
+ rule /(infinity|NaN)\b/i, Num
108
+ rule /'[^'\\]*(\\.[^'\\]*)*'/m, Str::Single
109
+ rule /"[^"\\]*(\\.[^"\\]*)*"/m, Str::Double
110
+ rule /`[^`]*`/m, Str::Backtick
111
+
112
+ # names
113
+ rule /\$#{id}/, Name::Variable
114
+ rule /#(#{id}|\d+\b)/, Name::Variable::Instance
115
+ rule /(\.\s*)('#{id}')/ do
116
+ groups Name::Builtin::Pseudo, Name::Variable::Class
117
+ end
118
+ rule /(self)(\s*->\s*)('#{id}')/i do
119
+ groups Name::Builtin::Pseudo, Operator, Name::Variable::Class
120
+ end
121
+ rule /(\.\.?\s*)(#{id}(=(?!=))?)/ do
122
+ groups Name::Builtin::Pseudo, Name::Other
123
+ end
124
+ rule /(->\\?\s*|&\s*)(#{id}(=(?!=))?)/ do
125
+ groups Operator, Name::Other
126
+ end
127
+ rule /(?<!->)(self|inherited|currentcapture|givenblock)\b/i, Name::Builtin::Pseudo
128
+ rule /-(?!infinity)#{id}/i, Name::Attribute
129
+ rule /::\s*#{id}/, Name::Label
130
+ rule /error_((code|msg)_\w+|adderror|columnrestriction|databaseconnectionunavailable|databasetimeout|deleteerror|fieldrestriction|filenotfound|invaliddatabase|invalidpassword|invalidusername|modulenotfound|noerror|nopermission|outofmemory|reqcolumnmissing|reqfieldmissing|requiredcolumnmissing|requiredfieldmissing|updateerror)/i, Name::Exception
131
+
132
+ # definitions
133
+ rule /(define)(\s+)(#{id})(\s*=>\s*)(type|trait|thread)\b/i do
134
+ groups Keyword::Declaration, Text, Name::Class, Operator, Keyword
135
+ end
136
+ rule %r((define)(\s+)(#{id})(\s*->\s*)(#{id}=?|[-+*/%]))i do
137
+ groups Keyword::Declaration, Text, Name::Class, Operator, Name::Function
138
+ push :signature
139
+ end
140
+ rule /(define)(\s+)(#{id})/i do
141
+ groups Keyword::Declaration, Text, Name::Function
142
+ push :signature
143
+ end
144
+ rule %r((public|protected|private|provide)(\s+)((#{id}=?|[-+*/%])(?=\s*\()))i do
145
+ groups Keyword, Text, Name::Function
146
+ push :signature
147
+ end
148
+ rule /(public|protected|private|provide)(\s+)(#{id})/i do
149
+ groups Keyword, Text, Name::Function
150
+ end
151
+
152
+ # keywords
153
+ rule /(true|false|none|minimal|full|all|void)\b/i, Keyword::Constant
154
+ rule /(local|var|variable|global|data(?=\s))\b/i, Keyword::Declaration
155
+ rule /(array|date|decimal|duration|integer|map|pair|string|tag|xml|null|boolean|bytes|keyword|list|locale|queue|set|stack|staticarray)\b/i, Keyword::Type
156
+ rule /(#{id})(\s+)(in)\b/i do
157
+ groups Name, Text, Keyword
158
+ end
159
+ rule /(let|into)(\s+)(#{id})/i do
160
+ groups Keyword, Text, Name
161
+ end
162
+
163
+ # other
164
+ rule /,/, Punctuation, :commamember
165
+ rule /(and|or|not)\b/i, Operator::Word
166
+ rule /(#{id})(\s*::\s*#{id})?(\s*=(?!=|>))/ do
167
+ groups Name, Name::Label, Operator
168
+ end
169
+
170
+ rule %r((/?)([\w.]+)) do |m|
171
+ name = m[2].downcase
172
+
173
+ if m[1] != ''
174
+ token Punctuation, m[1]
175
+ end
176
+
177
+ if name == 'namespace_using'
178
+ token Keyword::Namespace, m[2]
179
+ elsif self.class.keywords[:keywords].include? name
180
+ token Keyword, m[2]
181
+ elsif self.class.keywords[:types_traits].include? name
182
+ token Name::Builtin, m[2]
183
+ else
184
+ token Name::Other, m[2]
185
+ end
186
+ end
187
+
188
+ rule /(=)(n?bw|n?ew|n?cn|lte?|gte?|n?eq|n?rx|ft)\b/i do
189
+ groups Operator, Operator::Word
190
+ end
191
+ rule %r(:=|[-+*/%=<>&|!?\\]+), Operator
192
+ rule /[{}():;,@^]/, Punctuation
193
+ end
194
+
195
+ state :signature do
196
+ rule /\=>/, Operator, :pop!
197
+ rule /\)/, Punctuation, :pop!
198
+ rule /[(,]/, Punctuation, :parameter
199
+ mixin :lasso
200
+ end
201
+
202
+ state :parameter do
203
+ rule /\)/, Punctuation, :pop!
204
+ rule /-?#{id}/, Name::Attribute, :pop!
205
+ rule /\.\.\./, Name::Builtin::Pseudo
206
+ mixin :lasso
207
+ end
208
+
209
+ state :commamember do
210
+ rule %r((#{id}=?|[-+*/%])(?=\s*(\(([^()]*\([^()]*\))*[^\)]*\)\s*)?(::[\w.\s]+)?=>)), Name::Function, :signature
211
+ mixin :whitespacecomments
212
+ rule //, Text, :pop!
213
+ end
214
+
215
+ end
216
+ end
217
+ end
@@ -0,0 +1,446 @@
1
+ :keywords:
2
+ - "cache"
3
+ - "database_names"
4
+ - "database_schemanames"
5
+ - "database_tablenames"
6
+ - "define_tag"
7
+ - "define_type"
8
+ - "email_batch"
9
+ - "encode_set"
10
+ - "html_comment"
11
+ - "handle"
12
+ - "handle_error"
13
+ - "header"
14
+ - "if"
15
+ - "inline"
16
+ - "iterate"
17
+ - "ljax_target"
18
+ - "link"
19
+ - "link_currentaction"
20
+ - "link_currentgroup"
21
+ - "link_currentrecord"
22
+ - "link_detail"
23
+ - "link_firstgroup"
24
+ - "link_firstrecord"
25
+ - "link_lastgroup"
26
+ - "link_lastrecord"
27
+ - "link_nextgroup"
28
+ - "link_nextrecord"
29
+ - "link_prevgroup"
30
+ - "link_prevrecord"
31
+ - "log"
32
+ - "loop"
33
+ - "namespace_using"
34
+ - "output_none"
35
+ - "portal"
36
+ - "private"
37
+ - "protect"
38
+ - "records"
39
+ - "referer"
40
+ - "referrer"
41
+ - "repeating"
42
+ - "resultset"
43
+ - "rows"
44
+ - "search_args"
45
+ - "search_arguments"
46
+ - "select"
47
+ - "sort_args"
48
+ - "sort_arguments"
49
+ - "thread_atomic"
50
+ - "value_list"
51
+ - "while"
52
+ - "abort"
53
+ - "case"
54
+ - "else"
55
+ - "fail_if"
56
+ - "fail_ifnot"
57
+ - "fail"
58
+ - "if_empty"
59
+ - "if_false"
60
+ - "if_null"
61
+ - "if_true"
62
+ - "loop_abort"
63
+ - "loop_continue"
64
+ - "loop_count"
65
+ - "params"
66
+ - "params_up"
67
+ - "return"
68
+ - "return_value"
69
+ - "run_children"
70
+ - "soap_definetag"
71
+ - "soap_lastrequest"
72
+ - "soap_lastresponse"
73
+ - "tag_name"
74
+ - "ascending"
75
+ - "average"
76
+ - "by"
77
+ - "define"
78
+ - "descending"
79
+ - "do"
80
+ - "equals"
81
+ - "frozen"
82
+ - "group"
83
+ - "handle_failure"
84
+ - "import"
85
+ - "in"
86
+ - "into"
87
+ - "join"
88
+ - "let"
89
+ - "match"
90
+ - "max"
91
+ - "min"
92
+ - "on"
93
+ - "order"
94
+ - "parent"
95
+ - "protected"
96
+ - "provide"
97
+ - "public"
98
+ - "require"
99
+ - "returnhome"
100
+ - "skip"
101
+ - "split_thread"
102
+ - "sum"
103
+ - "take"
104
+ - "thread"
105
+ - "to"
106
+ - "trait"
107
+ - "type"
108
+ - "where"
109
+ - "with"
110
+ - "yield"
111
+ - "yieldhome"
112
+
113
+ :types_traits:
114
+ - "atbegin"
115
+ - "bson_iter"
116
+ - "bson"
117
+ - "bytes_document_body"
118
+ - "cache_server_element"
119
+ - "cache_server"
120
+ - "capture"
121
+ - "client_address"
122
+ - "client_ip"
123
+ - "component_container"
124
+ - "component_render_state"
125
+ - "component"
126
+ - "curl"
127
+ - "curltoken"
128
+ - "currency"
129
+ - "custom"
130
+ - "data_document"
131
+ - "database_registry"
132
+ - "dateandtime"
133
+ - "dbgp_packet"
134
+ - "dbgp_server"
135
+ - "debugging_stack"
136
+ - "delve"
137
+ - "dir"
138
+ - "dirdesc"
139
+ - "dns_response"
140
+ - "document_base"
141
+ - "document_body"
142
+ - "document_header"
143
+ - "dsinfo"
144
+ - "eacher"
145
+ - "email_compose"
146
+ - "email_parse"
147
+ - "email_pop"
148
+ - "email_queue_impl_base"
149
+ - "email_queue_impl"
150
+ - "email_smtp"
151
+ - "email_stage_impl_base"
152
+ - "email_stage_impl"
153
+ - "fastcgi_each_fcgi_param"
154
+ - "fastcgi_server"
155
+ - "fcgi_record"
156
+ - "fcgi_request"
157
+ - "file"
158
+ - "filedesc"
159
+ - "filemaker_datasource"
160
+ - "generateforeachkeyed"
161
+ - "generateforeachunkeyed"
162
+ - "generateseries"
163
+ - "hash_map"
164
+ - "html_atomic_element"
165
+ - "html_attr"
166
+ - "html_base"
167
+ - "html_binary"
168
+ - "html_br"
169
+ - "html_cdata"
170
+ - "html_container_element"
171
+ - "html_div"
172
+ - "html_document_body"
173
+ - "html_document_head"
174
+ - "html_eol"
175
+ - "html_fieldset"
176
+ - "html_form"
177
+ - "html_h1"
178
+ - "html_h2"
179
+ - "html_h3"
180
+ - "html_h4"
181
+ - "html_h5"
182
+ - "html_h6"
183
+ - "html_hr"
184
+ - "html_img"
185
+ - "html_input"
186
+ - "html_json"
187
+ - "html_label"
188
+ - "html_legend"
189
+ - "html_link"
190
+ - "html_meta"
191
+ - "html_object"
192
+ - "html_option"
193
+ - "html_raw"
194
+ - "html_script"
195
+ - "html_select"
196
+ - "html_span"
197
+ - "html_style"
198
+ - "html_table"
199
+ - "html_td"
200
+ - "html_text"
201
+ - "html_th"
202
+ - "html_tr"
203
+ - "http_document_header"
204
+ - "http_document"
205
+ - "http_error"
206
+ - "http_header_field"
207
+ - "http_server_connection_handler_globals"
208
+ - "http_server_connection_handler"
209
+ - "http_server_request_logger_thread"
210
+ - "http_server_web_connection"
211
+ - "http_server"
212
+ - "image"
213
+ - "include_cache"
214
+ - "inline_type"
215
+ - "java_jnienv"
216
+ - "jbyte"
217
+ - "jbytearray"
218
+ - "jchar"
219
+ - "jchararray"
220
+ - "jfieldid"
221
+ - "jfloat"
222
+ - "jint"
223
+ - "jmethodid"
224
+ - "jobject"
225
+ - "jshort"
226
+ - "json_decode"
227
+ - "json_encode"
228
+ - "json_literal"
229
+ - "json_object"
230
+ - "lassoapp_compiledsrc_appsource"
231
+ - "lassoapp_compiledsrc_fileresource"
232
+ - "lassoapp_content_rep_halt"
233
+ - "lassoapp_dirsrc_appsource"
234
+ - "lassoapp_dirsrc_fileresource"
235
+ - "lassoapp_installer"
236
+ - "lassoapp_livesrc_appsource"
237
+ - "lassoapp_livesrc_fileresource"
238
+ - "lassoapp_long_expiring_bytes"
239
+ - "lassoapp_manualsrc_appsource"
240
+ - "lassoapp_zip_file_server"
241
+ - "lassoapp_zipsrc_appsource"
242
+ - "lassoapp_zipsrc_fileresource"
243
+ - "ldap"
244
+ - "library_thread_loader"
245
+ - "list_node"
246
+ - "log_impl_base"
247
+ - "log_impl"
248
+ - "magick_image"
249
+ - "map_node"
250
+ - "memberstream"
251
+ - "memory_session_driver_impl_entry"
252
+ - "memory_session_driver_impl"
253
+ - "memory_session_driver"
254
+ - "mime_reader"
255
+ - "mongo_client"
256
+ - "mongo_collection"
257
+ - "mongo_cursor"
258
+ - "mustache_ctx"
259
+ - "mysql_session_driver_impl"
260
+ - "mysql_session_driver"
261
+ - "net_named_pipe"
262
+ - "net_tcp_ssl"
263
+ - "net_tcp"
264
+ - "net_udp_packet"
265
+ - "net_udp"
266
+ - "odbc_session_driver_impl"
267
+ - "odbc_session_driver"
268
+ - "opaque"
269
+ - "os_process"
270
+ - "pair_compare"
271
+ - "pairup"
272
+ - "pdf_barcode"
273
+ - "pdf_chunk"
274
+ - "pdf_color"
275
+ - "pdf_doc"
276
+ - "pdf_font"
277
+ - "pdf_hyphenator"
278
+ - "pdf_image"
279
+ - "pdf_list"
280
+ - "pdf_paragraph"
281
+ - "pdf_phrase"
282
+ - "pdf_read"
283
+ - "pdf_table"
284
+ - "pdf_text"
285
+ - "pdf_typebase"
286
+ - "percent"
287
+ - "portal_impl"
288
+ - "queriable_groupby"
289
+ - "queriable_grouping"
290
+ - "queriable_groupjoin"
291
+ - "queriable_join"
292
+ - "queriable_orderby"
293
+ - "queriable_orderbydescending"
294
+ - "queriable_select"
295
+ - "queriable_selectmany"
296
+ - "queriable_skip"
297
+ - "queriable_take"
298
+ - "queriable_thenby"
299
+ - "queriable_thenbydescending"
300
+ - "queriable_where"
301
+ - "raw_document_body"
302
+ - "regexp"
303
+ - "repeat"
304
+ - "scientific"
305
+ - "security_registry"
306
+ - "serialization_element"
307
+ - "serialization_object_identity_compare"
308
+ - "serialization_reader"
309
+ - "serialization_writer_ref"
310
+ - "serialization_writer_standin"
311
+ - "serialization_writer"
312
+ - "session_delete_expired_thread"
313
+ - "signature"
314
+ - "sourcefile"
315
+ - "sqlite_column"
316
+ - "sqlite_currentrow"
317
+ - "sqlite_db"
318
+ - "sqlite_results"
319
+ - "sqlite_session_driver_impl_entry"
320
+ - "sqlite_session_driver_impl"
321
+ - "sqlite_session_driver"
322
+ - "sqlite_table"
323
+ - "sqlite3_stmt"
324
+ - "sqlite3"
325
+ - "sys_process"
326
+ - "text_document"
327
+ - "tie"
328
+ - "timeonly"
329
+ - "tree_base"
330
+ - "tree_node"
331
+ - "tree_nullnode"
332
+ - "ucal"
333
+ - "usgcpu"
334
+ - "usgvm"
335
+ - "web_error_atend"
336
+ - "web_node_base"
337
+ - "web_node_content_representation_css_specialized"
338
+ - "web_node_content_representation_html_specialized"
339
+ - "web_node_content_representation_js_specialized"
340
+ - "web_node_content_representation_xhr_container"
341
+ - "web_node_echo"
342
+ - "web_node_root"
343
+ - "web_request_impl"
344
+ - "web_request"
345
+ - "web_response_impl"
346
+ - "web_response"
347
+ - "web_router"
348
+ - "websocket_handler"
349
+ - "worker_pool"
350
+ - "xml_attr"
351
+ - "xml_cdatasection"
352
+ - "xml_characterdata"
353
+ - "xml_comment"
354
+ - "xml_document"
355
+ - "xml_documentfragment"
356
+ - "xml_documenttype"
357
+ - "xml_domimplementation"
358
+ - "xml_element"
359
+ - "xml_entity"
360
+ - "xml_entityreference"
361
+ - "xml_namednodemap_attr"
362
+ - "xml_namednodemap_ht"
363
+ - "xml_namednodemap"
364
+ - "xml_node"
365
+ - "xml_nodelist"
366
+ - "xml_notation"
367
+ - "xml_processinginstruction"
368
+ - "xml_text"
369
+ - "xmlstream"
370
+ - "zip_file_impl"
371
+ - "zip_file"
372
+ - "zip_impl"
373
+ - "zip"
374
+ - "any"
375
+ - "formattingbase"
376
+ - "html_attributed"
377
+ - "html_element_coreattrs"
378
+ - "html_element_eventsattrs"
379
+ - "html_element_i18nattrs"
380
+ - "lassoapp_capabilities"
381
+ - "lassoapp_resource"
382
+ - "lassoapp_source"
383
+ - "queriable_asstring"
384
+ - "session_driver"
385
+ - "trait_array"
386
+ - "trait_asstring"
387
+ - "trait_backcontractible"
388
+ - "trait_backended"
389
+ - "trait_backexpandable"
390
+ - "trait_close"
391
+ - "trait_contractible"
392
+ - "trait_decompose_assignment"
393
+ - "trait_doubleended"
394
+ - "trait_each_sub"
395
+ - "trait_encodeurl"
396
+ - "trait_endedfullymutable"
397
+ - "trait_expandable"
398
+ - "trait_file"
399
+ - "trait_finite"
400
+ - "trait_finiteforeach"
401
+ - "trait_foreach"
402
+ - "trait_foreachtextelement"
403
+ - "trait_frontcontractible"
404
+ - "trait_frontended"
405
+ - "trait_frontexpandable"
406
+ - "trait_fullymutable"
407
+ - "trait_generator"
408
+ - "trait_generatorcentric"
409
+ - "trait_hashable"
410
+ - "trait_json_serialize"
411
+ - "trait_keyed"
412
+ - "trait_keyedfinite"
413
+ - "trait_keyedforeach"
414
+ - "trait_keyedmutable"
415
+ - "trait_list"
416
+ - "trait_map"
417
+ - "trait_net"
418
+ - "trait_pathcomponents"
419
+ - "trait_positionallykeyed"
420
+ - "trait_positionallysearchable"
421
+ - "trait_queriable"
422
+ - "trait_queriablelambda"
423
+ - "trait_readbytes"
424
+ - "trait_readstring"
425
+ - "trait_scalar"
426
+ - "trait_searchable"
427
+ - "trait_serializable"
428
+ - "trait_setencoding"
429
+ - "trait_setoperations"
430
+ - "trait_stack"
431
+ - "trait_treenode"
432
+ - "trait_writebytes"
433
+ - "trait_writestring"
434
+ - "trait_xml_elementcompat"
435
+ - "trait_xml_nodecompat"
436
+ - "web_connection"
437
+ - "web_node_container"
438
+ - "web_node_content_css_specialized"
439
+ - "web_node_content_document"
440
+ - "web_node_content_html_specialized"
441
+ - "web_node_content_js_specialized"
442
+ - "web_node_content_json_specialized"
443
+ - "web_node_content_representation"
444
+ - "web_node_content"
445
+ - "web_node_postable"
446
+ - "web_node"