Skip to content

nim-wrapper for variantkey -- (chrom, pos, ref, alt) -> uint64

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE-variantkey
Notifications You must be signed in to change notification settings

brentp/variantkey-nim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

variantkey

nim wrapper for variantkey.

This wrapper can encode+decode about 5 million variants per second. The entirety of the API exposed by this library is demonstrated below:

import variantkey

var
  chrom = "19"
  pos = 3323934'u32
  # encode
  e = encode(chrom, pos, "A", "T")


assert e.exact
echo e # 10959892387821256704
echo e.decode # (chrom: "19", position: 3323934, reference: "A", alternate: "T", exact: true)

# longer variants are encoded with a hash
e = encode("1", 878111, "CAGGGGCCCCCGGGCTCCGGACCCCCCACCCCGTCCCGGGACTCTGCCCGGCGAGCCCCCCGGAA", "C")
# the reference and alternate are not set upon decoding.
echo e # (chrom: "1", position: 878111, reference: "", alternate: "")

About

nim-wrapper for variantkey -- (chrom, pos, ref, alt) -> uint64

Topics

Resources

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE-variantkey

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published