def iterator_filtered( gff_iterator, feature = None, source = None, contig = None, interval = None, strand = None):
    if interval: start, end = interval
    if strand == ".": strand = None

    for gff in gff_iterator:
        if feature and gff.feature != feature: continue
        if source and gff.source != source: continue
        if contig and gff.contig != contig: continue
        if strand and gff.strand != strand: continue
        if interval and min(end,gff.end) - max(start,gff.start) < 0: continue
        yield gff
RESTful CRUD controller
dataset/ETHPy150Open CGATOxford/cgat/obsolete/GFF.py/iterator_filtered--crossover with--dataset/ETHPy150Open sahana/eden/controllers/asset.py/catalog