Method: Bio::GFFbrowser::Digest::InMemory#parse

Defined in:
lib/bio/db/gff/digest/gffinmemory.rb

#parseObject

Digest mRNA from the GFFdb and store in Hash Next yield(id, seq) from Hash



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/bio/db/gff/digest/gffinmemory.rb', line 35

def parse 
  info "---- Digest DB and store data in mRNA Hash"
  @count_ids          = Counter.new   # Count ids
  @count_seqnames     = Counter.new   # Count seqnames
  @componentlist      = {} # Store containers, like genes, contigs
  @orflist            = LinkedRecs.new
  @mrnalist           = LinkedRecs.new   # Store linked mRNA records
  @cdslist            = LinkedRecs.new
  @exonlist           = LinkedRecs.new
  @sequencelist       = {}
  @unrecognized_features = {}
  @gff.records.each do | rec |
    store_record(rec)
  end
  @gff.sequences.each do | bioseq |
    id = bioseq.entry_id
    @sequencelist[id] = bioseq.to_s # in Bio::Sequence with contained Bio::FastaFormat
  end
  validate_mrnas
  validate_cdss 
  show_unrecognized_features 
  @genelist      = @count_ids.keys 
  log_sys_info("After reading GFF")
  read_fasta
  log_sys_info("After reading FASTA")
end