Class: Onigmo::PrettyPrintVisitor
- Defined in:
- lib/onigmo/pretty_print_visitor.rb
Instance Attribute Summary collapse
-
#q ⇒ Object
readonly
Returns the value of attribute q.
Instance Method Summary collapse
-
#initialize(q) ⇒ PrettyPrintVisitor
constructor
A new instance of PrettyPrintVisitor.
- #visit_alternation_node(node) ⇒ Object
- #visit_anchor_buffer_begin_node(node) ⇒ Object
- #visit_anchor_buffer_end_node(node) ⇒ Object
- #visit_anchor_keep_node(node) ⇒ Object
- #visit_anchor_line_begin_node(node) ⇒ Object
- #visit_anchor_line_end_node(node) ⇒ Object
- #visit_anchor_position_begin_node(node) ⇒ Object
- #visit_anchor_semi_end_node(node) ⇒ Object
- #visit_anchor_word_boundary_invert_node(node) ⇒ Object
- #visit_anchor_word_boundary_node(node) ⇒ Object
- #visit_any_node(node) ⇒ Object
- #visit_backref_node(node) ⇒ Object
- #visit_call_node(node) ⇒ Object
- #visit_cclass_invert_node(node) ⇒ Object
- #visit_cclass_node(node) ⇒ Object
- #visit_enclose_absent_node(node) ⇒ Object
- #visit_enclose_condition_node(node) ⇒ Object
- #visit_enclose_memory_node(node) ⇒ Object
- #visit_enclose_options_node(node) ⇒ Object
- #visit_enclose_stop_backtrack_node(node) ⇒ Object
- #visit_list_node(node) ⇒ Object
- #visit_look_ahead_invert_node(node) ⇒ Object
- #visit_look_ahead_node(node) ⇒ Object
- #visit_look_behind_invert_node(node) ⇒ Object
- #visit_look_behind_node(node) ⇒ Object
- #visit_quantifier_node(node) ⇒ Object
- #visit_string_node(node) ⇒ Object
- #visit_word_invert_node(node) ⇒ Object
- #visit_word_node(node) ⇒ Object
Methods inherited from Visitor
Constructor Details
#initialize(q) ⇒ PrettyPrintVisitor
Returns a new instance of PrettyPrintVisitor.
9 10 11 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 9 def initialize(q) @q = q end |
Instance Attribute Details
#q ⇒ Object (readonly)
Returns the value of attribute q.
7 8 9 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 7 def q @q end |
Instance Method Details
#visit_alternation_node(node) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 13 def visit_alternation_node(node) q.group do q.text("alternation(") q.nest(2) do q.breakable("") q.seplist(node.nodes) do |child_node| visit(child_node) end end q.breakable("") q.text(")") end end |
#visit_anchor_buffer_begin_node(node) ⇒ Object
27 28 29 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 27 def visit_anchor_buffer_begin_node(node) q.text("anchorBufferBegin()") end |
#visit_anchor_buffer_end_node(node) ⇒ Object
31 32 33 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 31 def visit_anchor_buffer_end_node(node) q.text("anchorBufferEnd()") end |
#visit_anchor_keep_node(node) ⇒ Object
35 36 37 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 35 def visit_anchor_keep_node(node) q.text("anchorKeep()") end |
#visit_anchor_line_begin_node(node) ⇒ Object
39 40 41 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 39 def visit_anchor_line_begin_node(node) q.text("anchorLineBegin()") end |
#visit_anchor_line_end_node(node) ⇒ Object
43 44 45 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 43 def visit_anchor_line_end_node(node) q.text("anchorLineEnd()") end |
#visit_anchor_position_begin_node(node) ⇒ Object
47 48 49 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 47 def visit_anchor_position_begin_node(node) q.text("anchorPositionBegin()") end |
#visit_anchor_semi_end_node(node) ⇒ Object
51 52 53 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 51 def visit_anchor_semi_end_node(node) q.text("anchorSemiEnd()") end |
#visit_anchor_word_boundary_invert_node(node) ⇒ Object
59 60 61 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 59 def visit_anchor_word_boundary_invert_node(node) q.text("anchorWordBoundaryInvert()") end |
#visit_anchor_word_boundary_node(node) ⇒ Object
55 56 57 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 55 def visit_anchor_word_boundary_node(node) q.text("anchorWordBoundary()") end |
#visit_any_node(node) ⇒ Object
63 64 65 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 63 def visit_any_node(node) q.text("any") end |
#visit_backref_node(node) ⇒ Object
67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 67 def visit_backref_node(node) q.group do q.text("backref(") q.nest(2) do q.breakable("") q.seplist(node.values) do |value| q.pp(value) end end q.breakable("") q.text(")") end end |
#visit_call_node(node) ⇒ Object
81 82 83 84 85 86 87 88 89 90 91 92 93 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 81 def visit_call_node(node) q.group do q.text("call(") q.nest(2) do q.breakable("") q.seplist([node.number, node.name]) do |value| q.pp(value) end end q.breakable("") q.text(")") end end |
#visit_cclass_invert_node(node) ⇒ Object
107 108 109 110 111 112 113 114 115 116 117 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 107 def visit_cclass_invert_node(node) q.group do q.text("cclassInvert(") q.nest(2) do q.breakable("") q.pp(node.values) end q.breakable("") q.text(")") end end |
#visit_cclass_node(node) ⇒ Object
95 96 97 98 99 100 101 102 103 104 105 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 95 def visit_cclass_node(node) q.group do q.text("cclass(") q.nest(2) do q.breakable("") q.pp(node.values) end q.breakable("") q.text(")") end end |
#visit_enclose_absent_node(node) ⇒ Object
119 120 121 122 123 124 125 126 127 128 129 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 119 def visit_enclose_absent_node(node) q.group do q.text("encloseAbsent(") q.nest(2) do q.breakable("") visit(node.node) end q.breakable("") q.text(")") end end |
#visit_enclose_condition_node(node) ⇒ Object
131 132 133 134 135 136 137 138 139 140 141 142 143 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 131 def visit_enclose_condition_node(node) q.group do q.text("encloseCondition(") q.nest(2) do q.breakable("") q.pp(node.number) q.comma_breakable visit(node.node) end q.breakable("") q.text(")") end end |
#visit_enclose_memory_node(node) ⇒ Object
145 146 147 148 149 150 151 152 153 154 155 156 157 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 145 def visit_enclose_memory_node(node) q.group do q.text("encloseMemory(") q.nest(2) do q.breakable("") q.pp(node.number) q.comma_breakable visit(node.node) end q.breakable("") q.text(")") end end |
#visit_enclose_options_node(node) ⇒ Object
159 160 161 162 163 164 165 166 167 168 169 170 171 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 159 def (node) q.group do q.text("encloseOptions(") q.nest(2) do q.breakable("") q.pp(node.) q.comma_breakable visit(node.node) end q.breakable("") q.text(")") end end |
#visit_enclose_stop_backtrack_node(node) ⇒ Object
173 174 175 176 177 178 179 180 181 182 183 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 173 def visit_enclose_stop_backtrack_node(node) q.group do q.text("encloseStopBacktrack(") q.nest(2) do q.breakable("") visit(node.node) end q.breakable("") q.text(")") end end |
#visit_list_node(node) ⇒ Object
185 186 187 188 189 190 191 192 193 194 195 196 197 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 185 def visit_list_node(node) q.group do q.text("list(") q.nest(2) do q.breakable("") q.seplist(node.nodes) do |child_node| visit(child_node) end end q.breakable("") q.text(")") end end |
#visit_look_ahead_invert_node(node) ⇒ Object
211 212 213 214 215 216 217 218 219 220 221 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 211 def visit_look_ahead_invert_node(node) q.group do q.text("lookAheadInvert(") q.nest(2) do q.breakable("") visit(node.node) end q.breakable("") q.text(")") end end |
#visit_look_ahead_node(node) ⇒ Object
199 200 201 202 203 204 205 206 207 208 209 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 199 def visit_look_ahead_node(node) q.group do q.text("lookAhead(") q.nest(2) do q.breakable("") visit(node.node) end q.breakable("") q.text(")") end end |
#visit_look_behind_invert_node(node) ⇒ Object
235 236 237 238 239 240 241 242 243 244 245 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 235 def visit_look_behind_invert_node(node) q.group do q.text("lookBehindInvert(") q.nest(2) do q.breakable("") visit(node.node) end q.breakable("") q.text(")") end end |
#visit_look_behind_node(node) ⇒ Object
223 224 225 226 227 228 229 230 231 232 233 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 223 def visit_look_behind_node(node) q.group do q.text("lookBehind(") q.nest(2) do q.breakable("") visit(node.node) end q.breakable("") q.text(")") end end |
#visit_quantifier_node(node) ⇒ Object
247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 247 def visit_quantifier_node(node) q.group do q.text("quantifier(") q.nest(2) do q.breakable("") q.seplist({ lower: node.lower, upper: node.upper, greedy: node.greedy }) do |key, value| q.text("#{key}: ") q.pp(value) end q.comma_breakable visit(node.node) end q.breakable("") q.text(")") end end |
#visit_string_node(node) ⇒ Object
264 265 266 267 268 269 270 271 272 273 274 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 264 def visit_string_node(node) q.group do q.text("string(") q.nest(2) do q.breakable("") q.pp(node.value) end q.breakable("") q.text(")") end end |
#visit_word_invert_node(node) ⇒ Object
280 281 282 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 280 def visit_word_invert_node(node) q.text("wordInvert()") end |
#visit_word_node(node) ⇒ Object
276 277 278 |
# File 'lib/onigmo/pretty_print_visitor.rb', line 276 def visit_word_node(node) q.text("word()") end |