Class: Jazzy::Stats
- Inherits:
-
Object
- Object
- Jazzy::Stats
- Includes:
- Config::Mixin
- Defined in:
- lib/jazzy/stats.rb
Overview
Collect + report metadata about a processed module
Instance Attribute Summary collapse
-
#acl_skipped ⇒ Object
readonly
Returns the value of attribute acl_skipped.
-
#documented ⇒ Object
readonly
Returns the value of attribute documented.
-
#spi_skipped ⇒ Object
readonly
Returns the value of attribute spi_skipped.
-
#undocumented_decls ⇒ Object
readonly
Returns the value of attribute undocumented_decls.
Instance Method Summary collapse
- #acl_included ⇒ Object
- #add_acl_skipped ⇒ Object
- #add_documented ⇒ Object
- #add_spi_skipped ⇒ Object
- #add_undocumented(decl) ⇒ Object
- #doc_coverage ⇒ Object
-
#initialize ⇒ Stats
constructor
A new instance of Stats.
- #remove_undocumented(decl) ⇒ Object
- #report ⇒ Object
- #undocumented ⇒ Object
Methods included from Config::Mixin
Constructor Details
#initialize ⇒ Stats
Returns a new instance of Stats.
38 39 40 41 |
# File 'lib/jazzy/stats.rb', line 38 def initialize @documented = @acl_skipped = @spi_skipped = 0 @undocumented_decls = [] end |
Instance Attribute Details
#acl_skipped ⇒ Object (readonly)
Returns the value of attribute acl_skipped.
8 9 10 |
# File 'lib/jazzy/stats.rb', line 8 def acl_skipped @acl_skipped end |
#documented ⇒ Object (readonly)
Returns the value of attribute documented.
8 9 10 |
# File 'lib/jazzy/stats.rb', line 8 def documented @documented end |
#spi_skipped ⇒ Object (readonly)
Returns the value of attribute spi_skipped.
8 9 10 |
# File 'lib/jazzy/stats.rb', line 8 def spi_skipped @spi_skipped end |
#undocumented_decls ⇒ Object (readonly)
Returns the value of attribute undocumented_decls.
8 9 10 |
# File 'lib/jazzy/stats.rb', line 8 def undocumented_decls @undocumented_decls end |
Instance Method Details
#acl_included ⇒ Object
30 31 32 |
# File 'lib/jazzy/stats.rb', line 30 def acl_included documented + undocumented end |
#add_acl_skipped ⇒ Object
14 15 16 |
# File 'lib/jazzy/stats.rb', line 14 def add_acl_skipped @acl_skipped += 1 end |
#add_documented ⇒ Object
10 11 12 |
# File 'lib/jazzy/stats.rb', line 10 def add_documented @documented += 1 end |
#add_spi_skipped ⇒ Object
18 19 20 |
# File 'lib/jazzy/stats.rb', line 18 def add_spi_skipped @spi_skipped += 1 end |
#add_undocumented(decl) ⇒ Object
22 23 24 |
# File 'lib/jazzy/stats.rb', line 22 def add_undocumented(decl) @undocumented_decls << decl end |
#doc_coverage ⇒ Object
68 69 70 71 72 |
# File 'lib/jazzy/stats.rb', line 68 def doc_coverage return 0 if acl_included == 0 (100 * documented) / acl_included end |
#remove_undocumented(decl) ⇒ Object
26 27 28 |
# File 'lib/jazzy/stats.rb', line 26 def remove_undocumented(decl) @undocumented_decls.delete(decl) end |
#report ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/jazzy/stats.rb', line 43 def report puts "#{doc_coverage}% documentation coverage " \ "with #{undocumented} undocumented " \ "#{symbol_or_symbols(undocumented)}" if acl_included > 0 swift_acls = comma_list(config.min_acl.included_levels) puts "included #{acl_included} " + (config.objc_mode ? '' : "#{swift_acls} ") + symbol_or_symbols(acl_included) end if !config.objc_mode && acl_skipped > 0 puts "skipped #{acl_skipped} " \ "#{comma_list(config.min_acl.excluded_levels)} " \ "#{symbol_or_symbols(acl_skipped)} " \ '(use `--min-acl` to specify a different minimum ACL)' end if spi_skipped > 0 puts "skipped #{spi_skipped} SPI #{symbol_or_symbols(spi_skipped)} " \ '(use `--include-spi-declarations` to include these)' end end |
#undocumented ⇒ Object
34 35 36 |
# File 'lib/jazzy/stats.rb', line 34 def undocumented undocumented_decls.count end |