C0 code coverage information

Generated on Wed Aug 01 14:04:25 -0300 2007 with rcov 0.8.0


Code reported as executed by Ruby looks like this...
and this: this line is also marked as covered.
Lines considered as run by rcov, but not reported by Ruby, look like this,
and this: these lines were inferred by rcov (using simple heuristics).
Finally, here's a line marked as not executed.
Name Total lines Lines of code Total coverage Code coverage
lib/constant_pool.rb 66 50
97.0% 
96.0% 
 1 require 'constant_pool/cpinfo'
 2 require 'constant_pool/numbers'
 3 require 'constant_pool/strings'
 4 
 5 module YAJD
 6 
 7 module ConstantPool
 8 
 9 class ValidationError < StandardError
10 end
11 
12 class Pool
13     def initialize(f)
    def initialize(f)
     10   lib/class_file.rb:165 in 'YAJD::ClassFile#read_constant_pool'

14         @pool = []
15         @pool_idx = {}
16         @last_idx = 0
17 
18         list_count = f.read_u2
        list_count = f.read_u2
     10   File#read_u2 at lib/ext/file.rb:10

19         YAJD::logger.debug { "reading list of #{list_count} elements" } if YAJD::logger.debug?
        YAJD::logger.debug { "reading list of #{list_count} elements" } if YAJD::logger.debug?
     10   Logger#debug? at /usr/lib/ruby/1.8/logger.rb:217
     10   #<Class:YAJD>#logger at lib/yajd.rb:20

20         while list_count > 1 do 
21             obj = CPInfo::create_instance(self, f)
            obj = CPInfo::create_instance(self, f)
   2052   #<Class:YAJD::ConstantPool::CPInfo>#create_instance at lib/constant_pool/cpinfo.rb:62

22 
23             pos = self << obj
            pos = self << obj
   2052   YAJD::ConstantPool::Pool#<< at lib/constant_pool.rb:47

24 
25             YAJD::logger.debug { "[#{pos}] #{obj}" } if YAJD::logger.debug?
            YAJD::logger.debug { "[#{pos}] #{obj}" } if YAJD::logger.debug?
   2052   Logger#debug? at /usr/lib/ruby/1.8/logger.rb:217
   2052   #<Class:YAJD>#logger at lib/yajd.rb:20

26 
27             if obj.tag == CPInfo::LONG || obj.tag == CPInfo::DOUBLE
28                 list_count -= 1
29             end
30             list_count -= 1
31         end
32     end
33 
34     def validate
    def validate
      2   lib/class_file.rb:42 in 'YAJD::ClassFile#validate'

35         @pool.each { |x| x.validate(self) }
        @pool.each { |x| x.validate(self) }
    566   YAJD::ConstantPool::CUTF8Info#validate at lib/constant_pool/strings.rb:49
    264   YAJD::ConstantPool::CNameType#validate at lib/constant_pool/cpinfo.rb:137
    200   YAJD::ConstantPool::CMethodRef#validate at lib/constant_pool/cpinfo.rb:166
    155   YAJD::ConstantPool::CIMethodRef#validate at lib/constant_pool/cpinfo.rb:184
     53   YAJD::ConstantPool::CClass#validate at lib/constant_pool/cpinfo.rb:84
     39   YAJD::ConstantPool::CString#validate at lib/constant_pool/strings.rb:22
     13   YAJD::ConstantPool::CFieldRef#validate at lib/constant_pool/cpinfo.rb:176

36     end
37 
38     def size
39         @pool.size
40     end
41 
42     def at(idx)
    def at(idx)
   2930   (eval):3 in 'YAJD::ConstantPool::CommonAttrs#name_and_type'
   1946   (eval):3 in 'YAJD::ConstantPool::CNameType#descriptor'
   1946   (eval):3 in 'YAJD::ConstantPool::CNameType#name'
   1717   lib/constant_pool/cpinfo.rb:94 in 'YAJD::ConstantPool::CClass#full_name'
   1393   lib/visitor/javap/code_info.rb:237 in 'YAJD::Visitor::Javap::CodeInfoVisitor#object_ref'
   1317   (eval):3 in 'YAJD::ConstantPool::CommonAttrs#klass'
   1092   lib/constant_pool/cpinfo.rb:50 in 'YAJD::ConstantPool::CPInfo#check_reference'
   1025   lib/attributes/attribute.rb:10 in '#<Class:YAJD::Attributes>#factory'
    798   (eval):3 in 'YAJD::CommonInfo#descriptor'
    550   (eval):3 in 'YAJD::CommonInfo#name'
    359   (eval):3 in 'YAJD::CommonInfo#parent'
    282   (eval):3 in 'YAJD::Attributes::ConstantValueInfo#constant_value'
    226   lib/attributes/exceptions.rb:12 in 'YAJD::Attributes::ExceptionsInfo#initialize'
    172   (eval):3 in 'YAJD::ConstantPool::CString#string'
     48   lib/visitor/javap/code_info.rb:108 in 'YAJD::Visitor::Javap::CodeInfoVisitor#refactor_me'
     31   (eval):3 in 'YAJD::Attributes::ExceptionTable#catch_class'
     29   lib/visitor/javap/code_info.rb:121 in 'YAJD::Visitor::Javap::CodeInfoVisitor#refactor_me'
     18   lib/attributes/source_file.rb:18 in 'YAJD::Attributes::SourceFileInfo#source_file'
     10   lib/visitor/javap/class_file.rb:29 in 'YAJD::Visitor::Javap::ClassFileVisitor#class_signature'
     10   lib/visitor/javap/class_file.rb:26 in 'YAJD::Visitor::Javap::ClassFileVisitor#class_signature'
      8   lib/class_file.rb:82 in 'YAJD::ClassFile#this'
      5   lib/visitor/javap/class_file.rb:72 in 'YAJD::Visitor::Javap::ClassFileVisitor#class_info'
      5   (eval):3 in 'YAJD::InnerClass#inner_class_info'
      5   lib/visitor/javap/class_file.rb:41 in 'YAJD::Visitor::Javap::ClassFileVisitor#class_signature'
      4   (eval):3 in 'YAJD::InnerClass#inner_name'
      2   (eval):3 in 'YAJD::Attributes::SignatureInfo#signature'

43         i = @pool_idx[idx]
44         @pool[i] unless i.nil?
45     end
46 
47     def <<(elem)
    def <<(elem)
   2052   lib/constant_pool.rb:23 in 'YAJD::ConstantPool::Pool#initialize'

48         @last_idx += 1
49         @pool_idx[@last_idx] = @pool.size
50         @pool << elem
51         pos = @last_idx
52         if elem.is_a?(CLong) || elem.is_a?(CDouble)
53             @last_idx += 1
54         end
55 
56         pos
57     end
58 
59     def each_with_index
    def each_with_index
     10   lib/visitor/javap/class_file.rb:105 in 'YAJD::Visitor::Javap::ClassFileVisitor#constant_pool'

60         @pool_idx.sort.each { |k, v| yield(k, @pool[v]) }
61     end
62 end
63 
64 end
65 
66 end

Generated using the rcov code coverage analysis tool for Ruby version 0.8.0.

Valid XHTML 1.0! Valid CSS!