'Yield all child strings, possibly stripping them.'

def _all_strings(self, strip=False):

    for descendant in self.descendants:
        if (not isinstance(descendant, NavigableString)):
            continue
        if strip:
            descendant = descendant.strip()
            if (len(descendant) == 0):
                continue
        (yield descendant)
