melbourne 1.0.0 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/HISTORY.md +9 -0
- data/LICENSE +0 -0
- data/README.md +43 -0
- data/Rakefile +20 -17
- data/ext/melbourne/bstring-license.txt +0 -0
- data/ext/melbourne/bstrlib.c +0 -0
- data/ext/melbourne/bstrlib.h +0 -0
- data/ext/melbourne/extconf.rb +0 -0
- data/ext/melbourne/grammar.cpp +0 -0
- data/ext/melbourne/grammar.hpp +0 -0
- data/ext/melbourne/grammar.y +0 -0
- data/ext/melbourne/internal.hpp +0 -0
- data/ext/melbourne/lex.c.tab +0 -0
- data/ext/melbourne/local_state.hpp +0 -0
- data/ext/melbourne/melbourne.cpp +0 -0
- data/ext/melbourne/node.hpp +0 -0
- data/ext/melbourne/node_types.cpp +0 -0
- data/ext/melbourne/node_types.hpp +0 -0
- data/ext/melbourne/node_types.rb +0 -0
- data/ext/melbourne/quark.cpp +0 -0
- data/ext/melbourne/quark.hpp +0 -0
- data/ext/melbourne/symbols.cpp +0 -0
- data/ext/melbourne/symbols.hpp +0 -0
- data/ext/melbourne/var_table.cpp +0 -0
- data/ext/melbourne/var_table.hpp +0 -0
- data/ext/melbourne/visitor.cpp +0 -0
- data/ext/melbourne/visitor.hpp +0 -0
- data/lib/melbourne.rb +16 -18
- data/lib/melbourne/ast.rb +14 -16
- data/lib/melbourne/ast/constants.rb +5 -5
- data/lib/melbourne/ast/control_flow.rb +18 -18
- data/lib/melbourne/ast/data.rb +1 -1
- data/lib/melbourne/ast/definitions.rb +37 -37
- data/lib/melbourne/ast/exceptions.rb +9 -9
- data/lib/melbourne/ast/file.rb +0 -0
- data/lib/melbourne/ast/grapher.rb +7 -1
- data/lib/melbourne/ast/literals.rb +14 -14
- data/lib/melbourne/ast/node.rb +1 -1
- data/lib/melbourne/ast/operators.rb +6 -6
- data/lib/melbourne/ast/self.rb +0 -0
- data/lib/melbourne/ast/sends.rb +23 -23
- data/lib/melbourne/ast/values.rb +6 -6
- data/lib/melbourne/ast/variables.rb +15 -15
- data/lib/melbourne/parser.rb +1 -1
- data/lib/melbourne/processor.rb +1 -1
- data/spec/helpers/ast/node.rb +0 -0
- data/spec/helpers/ast/reduced_graph.rb +0 -0
- data/spec/lib/parser/alias_spec.rb +0 -0
- data/spec/lib/parser/and_spec.rb +0 -0
- data/spec/lib/parser/array_spec.rb +0 -0
- data/spec/lib/parser/attrasgn_spec.rb +0 -0
- data/spec/lib/parser/back_ref_spec.rb +0 -0
- data/spec/lib/parser/call_spec.rb +0 -0
- data/spec/lib/parser/case_spec.rb +0 -0
- data/spec/lib/parser/cdecl_spec.rb +0 -0
- data/spec/lib/parser/class_spec.rb +0 -0
- data/spec/lib/parser/colon2_spec.rb +0 -0
- data/spec/lib/parser/colon3_spec.rb +0 -0
- data/spec/lib/parser/const_spec.rb +0 -0
- data/spec/lib/parser/cvar_spec.rb +0 -0
- data/spec/lib/parser/cvasgn_spec.rb +0 -0
- data/spec/lib/parser/cvdecl_spec.rb +0 -0
- data/spec/lib/parser/defined_spec.rb +0 -0
- data/spec/lib/parser/defn_spec.rb +0 -0
- data/spec/lib/parser/defs_spec.rb +0 -0
- data/spec/lib/parser/dot2_spec.rb +0 -0
- data/spec/lib/parser/dot3_spec.rb +0 -0
- data/spec/lib/parser/dregx_spec.rb +0 -0
- data/spec/lib/parser/dstr_spec.rb +0 -0
- data/spec/lib/parser/dsym_spec.rb +0 -0
- data/spec/lib/parser/dxstr_spec.rb +0 -0
- data/spec/lib/parser/ensure_spec.rb +0 -0
- data/spec/lib/parser/false_spec.rb +0 -0
- data/spec/lib/parser/flip2_spec.rb +0 -0
- data/spec/lib/parser/flip3_spec.rb +0 -0
- data/spec/lib/parser/for_spec.rb +0 -0
- data/spec/lib/parser/gasgn_spec.rb +0 -0
- data/spec/lib/parser/gvar_spec.rb +0 -0
- data/spec/lib/parser/hash_spec.rb +0 -0
- data/spec/lib/parser/iasgn_spec.rb +0 -0
- data/spec/lib/parser/if_spec.rb +0 -0
- data/spec/lib/parser/iter_spec.rb +0 -0
- data/spec/lib/parser/lasgn_spec.rb +0 -0
- data/spec/lib/parser/lit_spec.rb +0 -0
- data/spec/lib/parser/masgn_spec.rb +0 -0
- data/spec/lib/parser/match2_spec.rb +0 -0
- data/spec/lib/parser/match3_spec.rb +0 -0
- data/spec/lib/parser/match_spec.rb +0 -0
- data/spec/lib/parser/module_spec.rb +0 -0
- data/spec/lib/parser/nil_spec.rb +0 -0
- data/spec/lib/parser/not_spec.rb +0 -0
- data/spec/lib/parser/nth_ref_spec.rb +0 -0
- data/spec/lib/parser/op_asgn_spec.rb +0 -0
- data/spec/lib/parser/or_spec.rb +0 -0
- data/spec/lib/parser/postexe_spec.rb +0 -0
- data/spec/lib/parser/regex_spec.rb +0 -0
- data/spec/lib/parser/rescue_spec.rb +0 -0
- data/spec/lib/parser/return_spec.rb +0 -0
- data/spec/lib/parser/sclass_spec.rb +0 -0
- data/spec/lib/parser/str_spec.rb +0 -0
- data/spec/lib/parser/super_spec.rb +0 -0
- data/spec/lib/parser/true_spec.rb +0 -0
- data/spec/lib/parser/undef_spec.rb +0 -0
- data/spec/lib/parser/until_spec.rb +0 -0
- data/spec/lib/parser/valias_spec.rb +0 -0
- data/spec/lib/parser/while_spec.rb +0 -0
- data/spec/lib/parser/xstr_spec.rb +0 -0
- data/spec/lib/parser/yield_spec.rb +0 -0
- data/spec/lib/parser/zsuper_spec.rb +0 -0
- data/spec/matchers/parse_as.rb +0 -0
- data/spec/spec_helper.rb +0 -0
- metadata +19 -8
- data/HISTORY +0 -3
- data/README.rdoc +0 -38
- data/VERSION.yml +0 -4
@@ -16,7 +16,7 @@ module Melbourne
|
|
16
16
|
#
|
17
17
|
attr_accessor :from
|
18
18
|
|
19
|
-
def initialize(line, to, from)
|
19
|
+
def initialize(line, to, from)
|
20
20
|
@line = line
|
21
21
|
@to = to
|
22
22
|
@from = from
|
@@ -25,7 +25,7 @@ module Melbourne
|
|
25
25
|
end
|
26
26
|
|
27
27
|
# TODO: document!
|
28
|
-
class VAlias < Alias
|
28
|
+
class VAlias < Alias
|
29
29
|
|
30
30
|
end
|
31
31
|
|
@@ -39,7 +39,7 @@ module Melbourne
|
|
39
39
|
#
|
40
40
|
attr_accessor :name
|
41
41
|
|
42
|
-
def initialize(line, sym)
|
42
|
+
def initialize(line, sym)
|
43
43
|
@line = line
|
44
44
|
@name = sym
|
45
45
|
end
|
@@ -61,13 +61,13 @@ module Melbourne
|
|
61
61
|
#
|
62
62
|
attr_accessor :array
|
63
63
|
|
64
|
-
def initialize(line, array)
|
64
|
+
def initialize(line, array)
|
65
65
|
@line = line
|
66
66
|
@array = array
|
67
67
|
end
|
68
68
|
|
69
69
|
# TODO: document!
|
70
|
-
def strip_arguments
|
70
|
+
def strip_arguments
|
71
71
|
if @array.first.kind_of? FormalArguments
|
72
72
|
node = @array.shift
|
73
73
|
if @array.first.kind_of? BlockArgument
|
@@ -80,7 +80,7 @@ module Melbourne
|
|
80
80
|
end
|
81
81
|
|
82
82
|
# TODO: document!
|
83
|
-
class ClosedScope < Node
|
83
|
+
class ClosedScope < Node
|
84
84
|
|
85
85
|
attr_accessor :body
|
86
86
|
|
@@ -101,7 +101,7 @@ module Melbourne
|
|
101
101
|
#
|
102
102
|
attr_accessor :arguments
|
103
103
|
|
104
|
-
def initialize(line, name, block)
|
104
|
+
def initialize(line, name, block)
|
105
105
|
@line = line
|
106
106
|
@name = name
|
107
107
|
@arguments = block.strip_arguments
|
@@ -126,7 +126,7 @@ module Melbourne
|
|
126
126
|
#
|
127
127
|
attr_accessor :body
|
128
128
|
|
129
|
-
def initialize(line, receiver, name, block)
|
129
|
+
def initialize(line, receiver, name, block)
|
130
130
|
@line = line
|
131
131
|
@receiver = receiver
|
132
132
|
@body = DefineSingletonScope.new line, name, block
|
@@ -138,7 +138,7 @@ module Melbourne
|
|
138
138
|
#
|
139
139
|
class DefineSingletonScope < Define
|
140
140
|
|
141
|
-
def initialize(line, name, block)
|
141
|
+
def initialize(line, name, block)
|
142
142
|
super line, name, block
|
143
143
|
end
|
144
144
|
|
@@ -167,7 +167,7 @@ module Melbourne
|
|
167
167
|
#
|
168
168
|
attr_accessor :defaults
|
169
169
|
|
170
|
-
# The splat (
|
170
|
+
# The splat (+*some+) arguments of the method
|
171
171
|
#
|
172
172
|
attr_accessor :splat
|
173
173
|
|
@@ -175,7 +175,7 @@ module Melbourne
|
|
175
175
|
#
|
176
176
|
attr_accessor :block_arg
|
177
177
|
|
178
|
-
def initialize(line, args, defaults, splat)
|
178
|
+
def initialize(line, args, defaults, splat)
|
179
179
|
@line = line
|
180
180
|
@defaults = nil
|
181
181
|
@block_arg = nil
|
@@ -203,7 +203,7 @@ module Melbourne
|
|
203
203
|
@splat = splat
|
204
204
|
end
|
205
205
|
|
206
|
-
def block_arg=(node)
|
206
|
+
def block_arg=(node)
|
207
207
|
@names << node.name
|
208
208
|
@block_arg = node
|
209
209
|
end
|
@@ -232,7 +232,7 @@ module Melbourne
|
|
232
232
|
end
|
233
233
|
|
234
234
|
# TODO: document!
|
235
|
-
def splat_index
|
235
|
+
def splat_index
|
236
236
|
if @splat
|
237
237
|
index = @names.size
|
238
238
|
index -= 1 if @block_arg
|
@@ -255,7 +255,7 @@ module Melbourne
|
|
255
255
|
#
|
256
256
|
attr_accessor :names
|
257
257
|
|
258
|
-
def initialize(line, block)
|
258
|
+
def initialize(line, block)
|
259
259
|
@line = line
|
260
260
|
array = block.array
|
261
261
|
@names = array.map { |a| a.name }
|
@@ -264,7 +264,7 @@ module Melbourne
|
|
264
264
|
|
265
265
|
end
|
266
266
|
|
267
|
-
module LocalVariable
|
267
|
+
module LocalVariable
|
268
268
|
|
269
269
|
attr_accessor :variable
|
270
270
|
|
@@ -283,7 +283,7 @@ module Melbourne
|
|
283
283
|
#
|
284
284
|
attr_accessor :name
|
285
285
|
|
286
|
-
def initialize(line, name)
|
286
|
+
def initialize(line, name)
|
287
287
|
@line = line
|
288
288
|
@name = name
|
289
289
|
end
|
@@ -308,7 +308,7 @@ module Melbourne
|
|
308
308
|
#
|
309
309
|
attr_accessor :body
|
310
310
|
|
311
|
-
def initialize(line, name, superclass, body)
|
311
|
+
def initialize(line, name, superclass, body)
|
312
312
|
@line = line
|
313
313
|
|
314
314
|
@superclass = superclass ? superclass : Nil.new(line)
|
@@ -332,7 +332,7 @@ module Melbourne
|
|
332
332
|
#
|
333
333
|
class ClassScope < ClosedScope
|
334
334
|
|
335
|
-
def initialize(line, name, body)
|
335
|
+
def initialize(line, name, body)
|
336
336
|
@line = line
|
337
337
|
@name = name.name
|
338
338
|
@body = body
|
@@ -351,9 +351,9 @@ module Melbourne
|
|
351
351
|
attr_accessor :name
|
352
352
|
|
353
353
|
# TODO: document!
|
354
|
-
attr_accessor :superclass
|
354
|
+
attr_accessor :superclass
|
355
355
|
|
356
|
-
def initialize(line, name, superclass)
|
356
|
+
def initialize(line, name, superclass)
|
357
357
|
@line = line
|
358
358
|
@name = name
|
359
359
|
@superclass = superclass
|
@@ -367,11 +367,11 @@ module Melbourne
|
|
367
367
|
#
|
368
368
|
class ScopedClassName < ClassName
|
369
369
|
|
370
|
-
# The parent of the scoped class name; for a class
|
370
|
+
# The parent of the scoped class name; for a class +class X::Y; end+ the scoped class name is +Y+ and the parent is +X+
|
371
371
|
#
|
372
372
|
attr_accessor :parent
|
373
373
|
|
374
|
-
def initialize(line, parent, superclass)
|
374
|
+
def initialize(line, parent, superclass)
|
375
375
|
@line = line
|
376
376
|
@name = parent.name
|
377
377
|
@parent = parent.parent
|
@@ -394,7 +394,7 @@ module Melbourne
|
|
394
394
|
#
|
395
395
|
attr_accessor :body
|
396
396
|
|
397
|
-
def initialize(line, name, body)
|
397
|
+
def initialize(line, name, body)
|
398
398
|
@line = line
|
399
399
|
|
400
400
|
if name.kind_of? Symbol
|
@@ -428,7 +428,7 @@ module Melbourne
|
|
428
428
|
#
|
429
429
|
attr_accessor :name
|
430
430
|
|
431
|
-
def initialize(line, name)
|
431
|
+
def initialize(line, name)
|
432
432
|
@line = line
|
433
433
|
@name = name
|
434
434
|
end
|
@@ -441,11 +441,11 @@ module Melbourne
|
|
441
441
|
#
|
442
442
|
class ScopedModuleName < ModuleName
|
443
443
|
|
444
|
-
# The parent of the scoped module name; for a module
|
444
|
+
# The parent of the scoped module name; for a module +module X::M; end+ the scoped module name is +Y+ and the parent is +X+
|
445
445
|
#
|
446
446
|
attr_accessor :parent
|
447
447
|
|
448
|
-
def initialize(line, parent)
|
448
|
+
def initialize(line, parent)
|
449
449
|
@line = line
|
450
450
|
@name = parent.name
|
451
451
|
@parent = parent.parent
|
@@ -457,7 +457,7 @@ module Melbourne
|
|
457
457
|
#
|
458
458
|
class ModuleScope < ClosedScope
|
459
459
|
|
460
|
-
def initialize(line, name, body)
|
460
|
+
def initialize(line, name, body)
|
461
461
|
@line = line
|
462
462
|
@name = name.name
|
463
463
|
@body = body
|
@@ -474,11 +474,11 @@ module Melbourne
|
|
474
474
|
#
|
475
475
|
class SClass < Node
|
476
476
|
|
477
|
-
# The receiver (for
|
477
|
+
# The receiver (for +class << self+, +self+ is the receiver)
|
478
478
|
#
|
479
479
|
attr_accessor :receiver
|
480
480
|
|
481
|
-
def initialize(line, receiver, body)
|
481
|
+
def initialize(line, receiver, body)
|
482
482
|
@line = line
|
483
483
|
@receiver = receiver
|
484
484
|
@body = SClassScope.new line, body
|
@@ -490,7 +490,7 @@ module Melbourne
|
|
490
490
|
#
|
491
491
|
class SClassScope < ClosedScope
|
492
492
|
|
493
|
-
def initialize(line, body)
|
493
|
+
def initialize(line, body)
|
494
494
|
@line = line
|
495
495
|
@body = body
|
496
496
|
@name = nil
|
@@ -499,7 +499,7 @@ module Melbourne
|
|
499
499
|
end
|
500
500
|
|
501
501
|
# TODO: document!
|
502
|
-
class Container < ClosedScope
|
502
|
+
class Container < ClosedScope
|
503
503
|
|
504
504
|
attr_accessor :file, :name, :variable_scope
|
505
505
|
|
@@ -510,7 +510,7 @@ module Melbourne
|
|
510
510
|
end
|
511
511
|
|
512
512
|
# TODO: document!
|
513
|
-
class EvalExpression < Container
|
513
|
+
class EvalExpression < Container
|
514
514
|
|
515
515
|
def initialize(body)
|
516
516
|
super body
|
@@ -520,7 +520,7 @@ module Melbourne
|
|
520
520
|
end
|
521
521
|
|
522
522
|
# TODO: document!
|
523
|
-
class Snippit < Container
|
523
|
+
class Snippit < Container
|
524
524
|
|
525
525
|
def initialize(body)
|
526
526
|
super body
|
@@ -530,7 +530,7 @@ module Melbourne
|
|
530
530
|
end
|
531
531
|
|
532
532
|
# TODO: document!
|
533
|
-
class Script < Container
|
533
|
+
class Script < Container
|
534
534
|
|
535
535
|
def initialize(body)
|
536
536
|
super body
|
@@ -539,17 +539,17 @@ module Melbourne
|
|
539
539
|
|
540
540
|
end
|
541
541
|
|
542
|
-
# A
|
542
|
+
# A +defined?+ statement as in:
|
543
543
|
#
|
544
544
|
# defined? a
|
545
545
|
#
|
546
546
|
class Defined < Node
|
547
547
|
|
548
|
-
# The expression passed to
|
548
|
+
# The expression passed to +defined?+
|
549
549
|
#
|
550
550
|
attr_accessor :expression
|
551
551
|
|
552
|
-
def initialize(line, expr)
|
552
|
+
def initialize(line, expr)
|
553
553
|
@line = line
|
554
554
|
@expression = expr
|
555
555
|
end
|
@@ -16,7 +16,7 @@ module Melbourne
|
|
16
16
|
#
|
17
17
|
attr_accessor :rescue
|
18
18
|
|
19
|
-
def initialize(line, body)
|
19
|
+
def initialize(line, body)
|
20
20
|
@line = line
|
21
21
|
@rescue = body
|
22
22
|
end
|
@@ -45,7 +45,7 @@ module Melbourne
|
|
45
45
|
#
|
46
46
|
attr_accessor :ensure
|
47
47
|
|
48
|
-
def initialize(line, body, ensr)
|
48
|
+
def initialize(line, body, ensr)
|
49
49
|
@line = line
|
50
50
|
@body = body || Nil.new(line)
|
51
51
|
@ensure = ensr
|
@@ -77,7 +77,7 @@ module Melbourne
|
|
77
77
|
#
|
78
78
|
attr_accessor :else
|
79
79
|
|
80
|
-
def initialize(line, body, rescue_body, else_body)
|
80
|
+
def initialize(line, body, rescue_body, else_body)
|
81
81
|
@line = line
|
82
82
|
@body = body
|
83
83
|
@rescue = rescue_body
|
@@ -100,7 +100,7 @@ module Melbourne
|
|
100
100
|
#
|
101
101
|
attr_accessor :conditions
|
102
102
|
|
103
|
-
# Assignments in the rescue condition (e.g.
|
103
|
+
# Assignments in the rescue condition (e.g. +RuntimeError => e+, where +e+ is assigned)
|
104
104
|
#
|
105
105
|
attr_accessor :assignment
|
106
106
|
|
@@ -109,12 +109,12 @@ module Melbourne
|
|
109
109
|
attr_accessor :body
|
110
110
|
|
111
111
|
# TODO: document!
|
112
|
-
attr_accessor :next
|
112
|
+
attr_accessor :next
|
113
113
|
|
114
114
|
# TODO: document!
|
115
|
-
attr_accessor :splat
|
115
|
+
attr_accessor :splat
|
116
116
|
|
117
|
-
def initialize(line, conditions, body, nxt)
|
117
|
+
def initialize(line, conditions, body, nxt)
|
118
118
|
@line = line
|
119
119
|
@next = nxt
|
120
120
|
@splat = nil
|
@@ -150,7 +150,7 @@ module Melbourne
|
|
150
150
|
end
|
151
151
|
|
152
152
|
# TODO: document!
|
153
|
-
def assignment?(node)
|
153
|
+
def assignment?(node)
|
154
154
|
case node
|
155
155
|
when VariableAssignment
|
156
156
|
value = node.value
|
@@ -166,7 +166,7 @@ module Melbourne
|
|
166
166
|
end
|
167
167
|
|
168
168
|
# TODO: document!
|
169
|
-
class RescueSplat < Node
|
169
|
+
class RescueSplat < Node
|
170
170
|
|
171
171
|
attr_accessor :value
|
172
172
|
|
data/lib/melbourne/ast/file.rb
CHANGED
File without changes
|
@@ -12,7 +12,7 @@ module Melbourne
|
|
12
12
|
#
|
13
13
|
attr_accessor :body
|
14
14
|
|
15
|
-
def initialize(line, array)
|
15
|
+
def initialize(line, array)
|
16
16
|
@line = line
|
17
17
|
@body = array
|
18
18
|
end
|
@@ -53,7 +53,7 @@ module Melbourne
|
|
53
53
|
#
|
54
54
|
attr_accessor :value
|
55
55
|
|
56
|
-
def initialize(line, str)
|
56
|
+
def initialize(line, str)
|
57
57
|
@line = line
|
58
58
|
@value = str.to_f
|
59
59
|
end
|
@@ -70,7 +70,7 @@ module Melbourne
|
|
70
70
|
#
|
71
71
|
attr_accessor :array
|
72
72
|
|
73
|
-
def initialize(line, array)
|
73
|
+
def initialize(line, array)
|
74
74
|
@line = line
|
75
75
|
@array = array
|
76
76
|
end
|
@@ -87,7 +87,7 @@ module Melbourne
|
|
87
87
|
#
|
88
88
|
attr_accessor :value
|
89
89
|
|
90
|
-
def initialize(line, sym)
|
90
|
+
def initialize(line, sym)
|
91
91
|
@line = line
|
92
92
|
@value = sym
|
93
93
|
end
|
@@ -102,7 +102,7 @@ module Melbourne
|
|
102
102
|
|
103
103
|
end
|
104
104
|
|
105
|
-
class NumberLiteral < Node
|
105
|
+
class NumberLiteral < Node
|
106
106
|
|
107
107
|
attr_accessor :value
|
108
108
|
|
@@ -119,7 +119,7 @@ module Melbourne
|
|
119
119
|
#
|
120
120
|
class FixnumLiteral < NumberLiteral
|
121
121
|
|
122
|
-
def initialize(line, value)
|
122
|
+
def initialize(line, value)
|
123
123
|
@line = line
|
124
124
|
@value = value
|
125
125
|
end
|
@@ -140,7 +140,7 @@ module Melbourne
|
|
140
140
|
#
|
141
141
|
attr_accessor :finish
|
142
142
|
|
143
|
-
def initialize(line, start, finish)
|
143
|
+
def initialize(line, start, finish)
|
144
144
|
@line = line
|
145
145
|
@start = start
|
146
146
|
@finish = finish
|
@@ -154,7 +154,7 @@ module Melbourne
|
|
154
154
|
#
|
155
155
|
class RangeExclude < Range
|
156
156
|
|
157
|
-
def initialize(line, start, finish)
|
157
|
+
def initialize(line, start, finish)
|
158
158
|
@line = line
|
159
159
|
@start = start
|
160
160
|
@finish = finish
|
@@ -176,7 +176,7 @@ module Melbourne
|
|
176
176
|
#
|
177
177
|
attr_accessor :options
|
178
178
|
|
179
|
-
def initialize(line, str, flags)
|
179
|
+
def initialize(line, str, flags)
|
180
180
|
@line = line
|
181
181
|
@source = str
|
182
182
|
@options = flags
|
@@ -194,7 +194,7 @@ module Melbourne
|
|
194
194
|
#
|
195
195
|
attr_accessor :string
|
196
196
|
|
197
|
-
def initialize(line, str)
|
197
|
+
def initialize(line, str)
|
198
198
|
@line = line
|
199
199
|
@string = str
|
200
200
|
end
|
@@ -211,9 +211,9 @@ module Melbourne
|
|
211
211
|
#
|
212
212
|
attr_accessor :array
|
213
213
|
|
214
|
-
attr_accessor :options
|
214
|
+
attr_accessor :options
|
215
215
|
|
216
|
-
def initialize(line, str, array)
|
216
|
+
def initialize(line, str, array)
|
217
217
|
@line = line
|
218
218
|
@string = str
|
219
219
|
@array = array
|
@@ -243,7 +243,7 @@ module Melbourne
|
|
243
243
|
#
|
244
244
|
class DynamicRegex < DynamicString
|
245
245
|
|
246
|
-
def initialize(line, str, array, flags)
|
246
|
+
def initialize(line, str, array, flags)
|
247
247
|
super line, str, array
|
248
248
|
@options = flags || 0
|
249
249
|
end
|
@@ -251,7 +251,7 @@ module Melbourne
|
|
251
251
|
end
|
252
252
|
|
253
253
|
# TODO: document!
|
254
|
-
class DynamicOnceRegex < DynamicRegex
|
254
|
+
class DynamicOnceRegex < DynamicRegex
|
255
255
|
|
256
256
|
end
|
257
257
|
|