Mercurial > hg > soundsoftware-site
annotate vendor/gems/coderay-1.0.0/lib/coderay/encoders/count.rb @ 1022:f2ec92061fca browsing
Merge from live branch
author | Chris Cannam <chris.cannam@soundsoftware.ac.uk> |
---|---|
date | Tue, 13 Nov 2012 10:35:40 +0000 |
parents | cbb26bc654de |
children |
rev | line source |
---|---|
Chris@909 | 1 module CodeRay |
Chris@909 | 2 module Encoders |
Chris@909 | 3 |
Chris@909 | 4 # Returns the number of tokens. |
Chris@909 | 5 # |
Chris@909 | 6 # Text and block tokens are counted. |
Chris@909 | 7 class Count < Encoder |
Chris@909 | 8 |
Chris@909 | 9 register_for :count |
Chris@909 | 10 |
Chris@909 | 11 protected |
Chris@909 | 12 |
Chris@909 | 13 def setup options |
Chris@909 | 14 super |
Chris@909 | 15 |
Chris@909 | 16 @count = 0 |
Chris@909 | 17 end |
Chris@909 | 18 |
Chris@909 | 19 def finish options |
Chris@909 | 20 output @count |
Chris@909 | 21 end |
Chris@909 | 22 |
Chris@909 | 23 public |
Chris@909 | 24 |
Chris@909 | 25 def text_token text, kind |
Chris@909 | 26 @count += 1 |
Chris@909 | 27 end |
Chris@909 | 28 |
Chris@909 | 29 def begin_group kind |
Chris@909 | 30 @count += 1 |
Chris@909 | 31 end |
Chris@909 | 32 alias end_group begin_group |
Chris@909 | 33 alias begin_line begin_group |
Chris@909 | 34 alias end_line begin_group |
Chris@909 | 35 |
Chris@909 | 36 end |
Chris@909 | 37 |
Chris@909 | 38 end |
Chris@909 | 39 end |