'Is this repeated item dirty?
This is used to invalidate any caches that our owners have of us.
Returns:
True if this object is dirty.'

def IsDirty(self):

    if self.dirty:
        return True
    for item in self.wrapped_list:
        if self.type_descriptor.IsDirty(item[0]):
            self.dirty = True
            return True
    return False
