tstrict_funcs.nim 558 B

123456789101112131415161718
  1. discard """
  2. cmd: "nim c --experimental:strictFuncs --experimental:views $file"
  3. """
  4. import tables, streams, nre, parsecsv, uri
  5. type
  6. Contig2Reads = TableRef[string, seq[string]]
  7. proc get_Contig2Reads(sin: Stream, fn: string, contig2len: TableRef[string, int]): Contig2Reads =
  8. result = newTable[string, seq[string]]()
  9. var parser: CsvParser
  10. open(parser, sin, filename = fn, separator = ' ', skipInitialSpace = true)
  11. while readRow(parser, 2):
  12. if contig2len.haskey(parser.row[1]):
  13. mgetOrPut(result, parser.row[1], @[]).add(parser.row[0])