コード例 #1
0
ファイル: strike.py プロジェクト: cheery/essence
def find_parent(obj, which):
    if isinstance(obj, mutable.Document):
        return None
    if mutable.istype(obj.parent, which):
        return obj.parent
    else:
        return find_parent(obj.parent, which)
コード例 #2
0
ファイル: strike.py プロジェクト: cheery/essence
def find_parent_deep(obj, which):
    if isinstance(obj, mutable.Document):
        return None
    if mutable.istype(obj.parent, which):
        while mutable.isinside(obj.parent, which):
            obj = obj.parent
        return obj.parent
    else:
        return find_parent(obj.parent, which)