new_path method

This commit is contained in:
John Lancaster
2026-02-22 17:20:11 -06:00
parent 13f49ec6cb
commit 7576bfb719

View File

@@ -1,5 +1,6 @@
from abc import ABC, abstractmethod from abc import ABC, abstractmethod
from collections.abc import Container, Iterable, MutableMapping, MutableSequence, Sized from collections.abc import Container, Iterable, MutableMapping, MutableSequence, Sized
from copy import copy
from typing import Protocol, TypeVar from typing import Protocol, TypeVar
from . import events as e from . import events as e
@@ -47,6 +48,11 @@ class HookedContainer(ABC, Sized, Iterable[T], Container[T]):
# Custom Methods # Custom Methods
def new_path(self, key):
new_path = copy(self._path)
new_path.append(key)
return new_path
def get_nested(self, keys): def get_nested(self, keys):
"""Recursively call __getitem__ with each key in the iterable.""" """Recursively call __getitem__ with each key in the iterable."""
result = self result = self