Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Design Philosophy #11

Closed
1 of 11 tasks
cauliyang opened this issue Aug 5, 2022 · 0 comments
Closed
1 of 11 tasks

Design Philosophy #11

cauliyang opened this issue Aug 5, 2022 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@cauliyang
Copy link
Collaborator

cauliyang commented Aug 5, 2022

Design Philosophy

Quick ideas about all I will do

Revise VcfReader

  • Add operator*, operator++ , operator !=, and return VcfRecord
  • Change VcfRecord as iterator VS Change VcfRecord as a Generator
  • Use sentinel as end_iterator
  • Change VcfReader's iterator tag to input_itrator
  • Support standard algorithm library
  • ⭐ Adopt C++20 standards to use concepts and support ranges operations
  • Add Error message when one vcf_reader has been consumed and call being() again

Build Interval Tree

  • Build a Interval Tree based on RB Tree
  • Move Shareptr
  • Adopt async to find overlaps concurrently
  • Using Google Benchmark to benchmark interval tree, brute force , method by index

Open Questions

@cauliyang cauliyang added the enhancement New feature or request label Aug 5, 2022
@cauliyang cauliyang self-assigned this Aug 5, 2022
@cauliyang cauliyang changed the title Feature_Ideas Design_Ideas Aug 5, 2022
@cauliyang cauliyang changed the title Design_Ideas Design Philosophy Aug 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant