Code coverage report for fontkit/src/subset/Subset.coffee

Statements: 100% (17 / 17)      Branches: 100% (4 / 4)      Functions: 100% (5 / 5)      Lines: 100% (17 / 17)      Ignored: none     

All files » fontkit/src/subset/ » Subset.coffee
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 311   1   6 6     6     21 13   21 19 19   21     4   4 4 4   4   1  
r = require 'restructure'
 
class Subset
  constructor: (@font) ->
    @glyphs = []
    @mapping = {}
    
    # always include the missing glyph
    @includeGlyph 0
    
  includeGlyph: (glyph) ->    
    if typeof glyph is 'object'
      glyph = glyph.id
    
    unless @mapping[glyph]?
      @glyphs.push glyph
      @mapping[glyph] = @glyphs.length - 1
      
    return @mapping[glyph]
    
  encodeStream: ->
    s = new r.EncodeStream
    
    process.nextTick =>
      @encode s
      s.end()
      
    return s
    
module.exports = Subset