mirror of
https://github.com/metabarcoding/obitools4.git
synced 2025-06-29 16:20:46 +00:00
Code refactoring
This commit is contained in:
@ -19,7 +19,7 @@ func (taxonomy *Taxonomy) IFilterOnName(name string, strict bool) *ITaxonSet {
|
||||
}
|
||||
|
||||
func (iterator *ITaxonSet) IFilterOnName(name string, strict bool) *ITaxonSet {
|
||||
new_iterator := NewITaxonSet()
|
||||
newIterator := NewITaxonSet()
|
||||
sentTaxa := make(map[int]bool)
|
||||
|
||||
if strict {
|
||||
@ -29,11 +29,11 @@ func (iterator *ITaxonSet) IFilterOnName(name string, strict bool) *ITaxonSet {
|
||||
if _, ok := sentTaxa[taxon.taxid]; !ok {
|
||||
if taxon.IsNameEqual(name) {
|
||||
sentTaxa[taxon.taxid] = true
|
||||
new_iterator.source <- taxon
|
||||
newIterator.source <- taxon
|
||||
}
|
||||
}
|
||||
}
|
||||
close(new_iterator.source)
|
||||
close(newIterator.source)
|
||||
}()
|
||||
} else {
|
||||
pattern := regexp.MustCompile(name)
|
||||
@ -44,13 +44,13 @@ func (iterator *ITaxonSet) IFilterOnName(name string, strict bool) *ITaxonSet {
|
||||
if _, ok := sentTaxa[taxon.taxid]; !ok {
|
||||
if taxon.IsNameMatching(pattern) {
|
||||
sentTaxa[taxon.taxid] = true
|
||||
new_iterator.source <- taxon
|
||||
newIterator.source <- taxon
|
||||
}
|
||||
}
|
||||
}
|
||||
close(new_iterator.source)
|
||||
close(newIterator.source)
|
||||
}()
|
||||
}
|
||||
|
||||
return new_iterator
|
||||
return newIterator
|
||||
}
|
||||
|
@ -1,19 +1,19 @@
|
||||
package obitax
|
||||
|
||||
func (iterator *ITaxonSet) IFilterOnTaxRank(rank string) *ITaxonSet {
|
||||
new_iter := NewITaxonSet()
|
||||
newIter := NewITaxonSet()
|
||||
|
||||
go func() {
|
||||
for iterator.Next() {
|
||||
taxon := iterator.Get()
|
||||
if taxon.rank == rank {
|
||||
new_iter.source <- taxon
|
||||
newIter.source <- taxon
|
||||
}
|
||||
}
|
||||
close(new_iter.source)
|
||||
close(newIter.source)
|
||||
}()
|
||||
|
||||
return new_iter
|
||||
return newIter
|
||||
}
|
||||
|
||||
func (set *TaxonSet) IFilterOnTaxRank(rank string) *ITaxonSet {
|
||||
|
@ -3,19 +3,19 @@ package obitax
|
||||
import "reflect"
|
||||
|
||||
func (iterator *ITaxonSet) IFilterOnSubcladeOf(taxon *TaxNode) *ITaxonSet {
|
||||
new_iter := NewITaxonSet()
|
||||
newIter := NewITaxonSet()
|
||||
|
||||
go func() {
|
||||
for iterator.Next() {
|
||||
tx := iterator.Get()
|
||||
if tx.IsSubCladeOf(taxon) {
|
||||
new_iter.source <- tx
|
||||
newIter.source <- tx
|
||||
}
|
||||
}
|
||||
close(new_iter.source)
|
||||
close(newIter.source)
|
||||
}()
|
||||
|
||||
return new_iter
|
||||
return newIter
|
||||
}
|
||||
|
||||
func (set *TaxonSet) IFilterOnSubcladeOf(taxon *TaxNode) *ITaxonSet {
|
||||
@ -43,17 +43,17 @@ func (iterator *ITaxonSet) IFilterBelongingSubclades(clades *TaxonSet) *ITaxonSe
|
||||
return iterator.IFilterOnSubcladeOf((*clades)[int(keys[0].Int())])
|
||||
}
|
||||
|
||||
new_iter := NewITaxonSet()
|
||||
newIter := NewITaxonSet()
|
||||
|
||||
go func() {
|
||||
for iterator.Next() {
|
||||
tx := iterator.Get()
|
||||
if tx.IsBelongingSubclades(clades) {
|
||||
new_iter.source <- tx
|
||||
newIter.source <- tx
|
||||
}
|
||||
}
|
||||
close(new_iter.source)
|
||||
close(newIter.source)
|
||||
}()
|
||||
|
||||
return new_iter
|
||||
return newIter
|
||||
}
|
||||
|
@ -74,8 +74,8 @@ func (iterator *ITaxonSet) Finished() bool {
|
||||
}
|
||||
|
||||
func (iterator *ITaxonSet) Split() *ITaxonSet {
|
||||
new_iter := ITaxonSet{iterator.source, nil, false, iterator.p_finished}
|
||||
return &new_iter
|
||||
newIter := ITaxonSet{iterator.source, nil, false, iterator.p_finished}
|
||||
return &newIter
|
||||
}
|
||||
|
||||
func (iterator *ITaxonSet) TaxonSet() *TaxonSet {
|
||||
|
Reference in New Issue
Block a user