@@ -20,7 +20,7 @@ def _validate_seqnames(seqnames):
2020
2121
2222def _validate_seqlengths (seqlengths , num_seqs ):
23- if not ut .is_list_of_type (seqlengths , int , ignore_none = True ):
23+ if not ( isinstance ( seqlengths , ut .IntegerList ) or ut . is_list_of_type (seqlengths , int , ignore_none = True ) ):
2424 raise ValueError ("'seqlengths' should be a list of integers." )
2525
2626 if num_seqs != len (seqlengths ):
@@ -32,7 +32,7 @@ def _validate_seqlengths(seqlengths, num_seqs):
3232
3333
3434def _validate_is_circular (is_circular , num_seqs ):
35- if not ut .is_list_of_type (is_circular , bool , ignore_none = True ):
35+ if not ( isinstance ( is_circular , ut .BooleanList ) or ut . is_list_of_type (is_circular , bool , ignore_none = True ) ):
3636 raise ValueError ("'is_circular' should be a list of booleans." )
3737
3838 if num_seqs != len (is_circular ):
@@ -141,8 +141,8 @@ def __init__(
141141 """
142142 self ._seqnames = list (seqnames )
143143 self ._reverse_seqnames = None
144- self ._seqlengths = self ._flatten_incoming (seqlengths , int )
145- self ._is_circular = self ._flatten_incoming (is_circular , bool )
144+ self ._seqlengths = ut . IntegerList ( self ._flatten_incoming (seqlengths , int ) )
145+ self ._is_circular = ut . BooleanList ( self ._flatten_incoming (is_circular , bool ) )
146146 self ._genome = self ._flatten_incoming (genome , str )
147147
148148 if validate :
@@ -359,7 +359,7 @@ def seqnames(self, seqnames: Sequence[str]):
359359 ######>> seqlengths <<######
360360 ############################
361361
362- def get_seqlengths (self ) -> List [ int ] :
362+ def get_seqlengths (self ) -> ut . IntegerList :
363363 """
364364 Returns:
365365 A list of integers is returned containing the lengths of all
@@ -399,7 +399,7 @@ def set_seqlengths(
399399 return output
400400
401401 @property
402- def seqlengths (self ) -> List [ int ] :
402+ def seqlengths (self ) -> ut . IntegerList :
403403 warn (
404404 "'seqlengths' is deprecated, use 'get_seqlengths' instead" ,
405405 UserWarning ,
@@ -419,7 +419,7 @@ def seqlengths(self, seqlengths: Optional[Union[int, Sequence[int], Dict[str, in
419419 ######>> is-circular <<######
420420 #############################
421421
422- def get_is_circular (self ) -> List [ bool ] :
422+ def get_is_circular (self ) -> ut . BooleanList :
423423 """
424424 Returns:
425425 A list of booleans is returned specifying whether each sequence
@@ -459,7 +459,7 @@ def set_is_circular(
459459 return output
460460
461461 @property
462- def is_circular (self ) -> List [ bool ] :
462+ def is_circular (self ) -> ut . BooleanList :
463463 warn (
464464 "'is_circular' is deprecated, use 'get_is_circular' instead" ,
465465 UserWarning ,
0 commit comments