'Return a generator which yields (name, ttl, rdata) tuples for
all rdatas in the zone which have the specified I{rdtype}
and I{covers}.  If I{rdtype} is dns.rdatatype.ANY, the default,
then all rdatas will be matched.
@param rdtype: int or string
@type rdtype: int or string
@param covers: the covered type (defaults to None)
@type covers: int or string'

def iterate_rdatas(self, rdtype=dns.rdatatype.ANY, covers=dns.rdatatype.NONE):

    if isinstance(rdtype, string_types):
        rdtype = dns.rdatatype.from_text(rdtype)
    if isinstance(covers, string_types):
        covers = dns.rdatatype.from_text(covers)
    for (name, node) in self.iteritems():
        for rds in node:
            if ((rdtype == dns.rdatatype.ANY) or ((rds.rdtype == rdtype) and (rds.covers == covers))):
                for rdata in rds:
                    (yield (name, rds.ttl, rdata))
