summaryrefslogtreecommitdiff
path: root/lib/coderay
diff options
context:
space:
mode:
authorKornelius Kalnbach <murphy@rubychan.de>2011-09-19 02:51:37 +0200
committerKornelius Kalnbach <murphy@rubychan.de>2011-09-19 02:51:37 +0200
commitf4a43f6d3ec57f7295dae6d70bb853994f4e8734 (patch)
tree4ac755f49cb19f91e27e4bebeffa5dad55569c27 /lib/coderay
parentcec235ca3f368cc908cf9d7dfe6cd6ec19f536e4 (diff)
downloadcoderay-f4a43f6d3ec57f7295dae6d70bb853994f4e8734.tar.gz
TokensProxy cleanup; #each returns self
Diffstat (limited to 'lib/coderay')
-rw-r--r--lib/coderay/tokens_proxy.rb25
1 files changed, 13 insertions, 12 deletions
diff --git a/lib/coderay/tokens_proxy.rb b/lib/coderay/tokens_proxy.rb
index b333e57..2a20435 100644
--- a/lib/coderay/tokens_proxy.rb
+++ b/lib/coderay/tokens_proxy.rb
@@ -2,6 +2,14 @@ module CodeRay
class TokensProxy < Struct.new :input, :lang, :options, :block
+ def encode encoder, options = {}
+ if encoder.respond_to? :to_sym
+ CodeRay.encode(input, lang, encoder, options)
+ else
+ encoder.encode_tokens tokens, options
+ end
+ end
+
def method_missing method, *args, &blk
encode method, *args
rescue PluginHost::PluginNotFound
@@ -12,26 +20,19 @@ module CodeRay
@tokens ||= scanner.tokenize(input)
end
+ def scanner
+ @scanner ||= CodeRay.scanner(lang, options, &block)
+ end
+
def each *args, &blk
tokens.each(*args, &blk)
+ self
end
def count
tokens.count
end
- def scanner
- @scanner ||= CodeRay.scanner(lang, options, &block)
- end
-
- def encode encoder, options = {}
- if encoder.respond_to? :to_sym
- CodeRay.encode(input, lang, encoder, options)
- else
- encoder.encode_tokens tokens, options
- end
- end
-
end
end