summaryrefslogtreecommitdiff
path: root/lib/irb/slex.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/irb/slex.rb')
-rw-r--r--lib/irb/slex.rb12
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/irb/slex.rb b/lib/irb/slex.rb
index 5dc496d893..ceee90b3d9 100644
--- a/lib/irb/slex.rb
+++ b/lib/irb/slex.rb
@@ -31,22 +31,22 @@ class SLex
@head = Node.new("")
end
- def def_rule(token, preproc = nil, postproc = nil)
+ def def_rule(token, preproc = nil, postproc = nil, &block)
# print node.inspect, "\n" if SLex.debug?
- postproc = Block.new if iterator?
+ postproc = block if block_given?
node = create(token, preproc, postproc)
end
- def def_rules(*tokens)
- if iterator?
- p = Block.new
+ def def_rules(*tokens, &block)
+ if block_given?
+ p = block
end
for token in tokens
def_rule(token, nil, p)
end
end
- def preporc(token, proc)
+ def preproc(token, proc)
node = search(token)
node.preproc=proc
end