282050d442
Fix validation code for Haplotype
2023-01-28 19:57:10 +00:00
57ebe391bf
Fix tests for _is_valid(::Haplotype)
2023-01-28 19:57:10 +00:00
2fa5782719
Add more informative errors to _is_valid
2023-01-11 17:17:10 -06:00
a61a80d586
Add translate function for Haplotypes
2023-01-11 15:01:43 -06:00
e251b292a7
Fix tests for translate(::Variation)
2023-01-11 15:01:43 -06:00
0b2879b78c
Add isless
function for Variation
2023-01-10 12:00:50 -06:00
860ce56b34
Add isless
function for Edit
2023-01-10 12:00:50 -06:00
2ff4181dd8
Fix deletion equality function
...
Fixes: da2cbbd528
("Add equals functionality to Deletion")
Signed-off-by: Thomas A. Christensen II <25492070+MillironX@users.noreply.github.com>
2023-01-10 11:41:08 -06:00
b80dd8c950
Rename reconstruct! function to reconstruct
...
The exclamation mark is conventionally used to mark mutating functions, but
reconstruct is no longer mutating, so change the notation.
2023-01-10 11:22:06 -06:00
adbf0ce7f1
Refactor reconstruct!
to use the built-in reference sequence
...
reconstruct! previously allow changing of _any_ sequence to match a
haplotype, with no check to see if that sequence is compatible with the
reference sequence the haplotype is based on. Change that to only allow
reconstructing sequences from the reference sequence itself, making this a
non-mutating function.
2023-01-10 11:22:06 -06:00
8a71715cd9
Change v::Haplotype
function arguments to h::Haplotype
...
`v` made sense for a `Variant`, but doesn't for a `Haplotype`, so pretty
things up.
2023-01-05 11:58:29 -06:00
1384783fcc
Update documentation wording to reflect new type names
2023-01-05 11:58:29 -06:00
5839de3ce1
Rename Variant
type to Haplotype
2023-01-05 11:58:29 -06:00
44aa41e628
Rename Variant.jl to Haplotype.jl
2023-01-05 11:58:29 -06:00
2a7d61e43d
Add docstrings for Variation functions
2023-01-04 11:56:45 -06:00
673481b40f
Add docstring for Variation
2023-01-04 11:56:45 -06:00
ea25ab87dc
Add docstrings for Variant methods
2023-01-04 11:56:45 -06:00
f49220782b
Add docstring for Variant
2023-01-04 11:56:45 -06:00
f1baf27865
Add docstring for lendiff(::Edit)
2023-01-04 11:56:45 -06:00
82ba838614
Add docstring for mutation(::Edit)
2023-01-04 11:56:45 -06:00
1f2b116518
Mark is_valid(::Variation) as private function
2023-01-04 11:56:45 -06:00
386acba8ab
Mark edits(::Variant)
as private API
2023-01-04 11:56:45 -06:00
a573693737
Mark edit(::Variation)
as private function
2023-01-04 11:56:45 -06:00
2f4f5fb5ae
Mark is_valid(::Variant)
as private function
2023-01-04 11:56:45 -06:00
2719c438f3
Mark lendiff(::Edit)
as private API
2023-01-04 11:56:45 -06:00
e8457e4241
Mark mutation(::Edit)
as private API
2023-01-04 11:56:45 -06:00
cb1c429610
Update getter usage in translate function
2023-01-04 11:56:45 -06:00
ef4460bbbf
Replace field accession with getter function usage
2023-01-04 11:56:45 -06:00
dd405c5f4b
Refactor _lendiff to use multiple dispatch
2023-01-04 11:56:45 -06:00
cab3029bc6
Refactor Edit length to use dispatch instead of type checking
2023-01-04 11:56:45 -06:00
22d460b15a
Remove unused argument names from base getters for edits
2023-01-04 11:56:45 -06:00
da2cbbd528
Add equals functionality to Deletion
2023-01-04 11:56:45 -06:00
f08d6eb991
Add length method for Substitution
2023-01-04 11:56:45 -06:00
3b2730b5c1
Add export for translate and reconstruct!
2023-01-04 11:56:45 -06:00
25c63906dc
Move exports to top of file
...
Per Blue style, exports should be one per line, and appear immediately
after using statements. Reorganize module file to comply
2023-01-04 11:56:45 -06:00
9f9d0899bd
Move Insertion-related code to edits/Insertion.jl
2023-01-04 11:56:45 -06:00
b36ab69c72
Move Deletion-related code to edits/Deletion.jl
2023-01-04 11:56:45 -06:00
ba9f0e8fb1
Move Substitution-related code to edits/Substitution.jl
2023-01-04 11:56:45 -06:00
8c2dd271f3
Move Variation-related code to Variation.jl
2023-01-04 11:56:45 -06:00
37965ac7eb
Move Variant-related code to Variant.jl
2023-01-04 11:56:45 -06:00
3f631ace8f
Move Edit-related code to Edit.jl
2023-01-04 11:56:45 -06:00
fb5b7dfacf
Remove commented-out code
2023-01-04 11:56:45 -06:00
128a5445ad
Switch alignment validation to after edit construction
2022-12-17 22:02:15 +00:00
f9058c5cb3
Update ranges to allow end position insertions
2022-12-17 22:02:15 +00:00
5be4dce200
Add check for soft clips when construction Variants from alignment
2022-12-17 22:02:15 +00:00
d8435be115
Add Variation-level validation for Variants
...
Testing indicates that some Variants (particularly those with insertions
and/or clips at the send of the query sequence) will validate fine as a
Variant, but will fail validation as a Variation. This problem is
particularly annoying when constructing Variants in the REPL, as the
creation will complete successfully, but the show of the Variant will
error out. To fix this, leverage the existing validation of Variation to
check each Edit within a Variant upon construction.
2022-12-17 22:02:15 +00:00
91c3acc85e
Add equality function for Variant
2022-12-17 22:02:15 +00:00
3b33c85d00
Add type parameterization to variations getter
...
I have encountered some cases where having a non-parameterized vector can
crash a downstream process. I don't yet know how to make a MWE of that, but
adding type parameters fixes my problem, and doesn't break any tests here.
2022-11-22 17:55:41 +00:00
f7278bd7d7
Remove unused AminoAcidSeq reference
2022-10-04 11:41:42 -05:00
1bbb85153c
Add constructor for Variant based on Variations
...
A Variant is a collection of Variations, right? Unfortunately there was no
way to convert a collection of Variations into a Variant, so I added one.
2022-07-21 12:33:35 +00:00