From 46b83c9c5384a299cdc8d8c5381259b1f6d0e4aa Mon Sep 17 00:00:00 2001 From: murphy Date: Thu, 31 Dec 2009 02:56:55 +0000 Subject: Fixed example tests. * test:clean task also deletes .expected.html files * LinesOfCode encoder can deal with tokens that have no scanner. Tests were added for this. * JSON encoder load rubygems if necessary. * NEW :loc as an alias for :lines_of_code * NEW Scanner methods marshal_dump, marshal_load FIXED Tokens dumping (failed while trying to dump @scanner) --- lib/coderay/scanner.rb | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'lib/coderay/scanner.rb') diff --git a/lib/coderay/scanner.rb b/lib/coderay/scanner.rb index 229ba19..8233b2c 100644 --- a/lib/coderay/scanner.rb +++ b/lib/coderay/scanner.rb @@ -114,9 +114,10 @@ module CodeRay # # Else, a Tokens object is used. def initialize code='', options = {}, &block - @options = self.class::DEFAULT_OPTIONS.merge options raise "I am only the basic Scanner class. I can't scan "\ "anything. :( Use my subclasses." if self.class == Scanner + + @options = self.class::DEFAULT_OPTIONS.merge options super Scanner.normify(code) @@ -199,6 +200,14 @@ module CodeRay end pos - (string.rindex(?\n, pos) || 0) end + + def marshal_dump + @options + end + + def marshal_load options + @options = options + end protected -- cgit v1.2.1