'Parse one or more objects by testing if it has matching stat results.
Args:
objs: An iterable of objects that should be checked.
expression: A StatFilter expression, e.g.:
"uid:>0 gid:=0 file_type:link"
Yields:
matching objects.'

def ParseObjs(self, objs, expression):

    self.Validate(expression)
    for obj in objs:
        if (not isinstance(obj, rdf_client.StatEntry)):
            continue
        for match in self.matchers:
            if (not match(obj)):
                break
        else:
            (yield obj)
