allow retrieval and pruning of contents by name
This commit is contained in:
parent
1c42269f92
commit
a44d6f034a
|
@ -14,6 +14,22 @@ class Directory(ABC):
|
||||||
def __iter__(self):
|
def __iter__(self):
|
||||||
return self.contents.__iter__()
|
return self.contents.__iter__()
|
||||||
|
|
||||||
|
def __getitem__(self, name):
|
||||||
|
for e in self:
|
||||||
|
if e.name == name:
|
||||||
|
return e
|
||||||
|
raise KeyError
|
||||||
|
|
||||||
|
def prune(self, name):
|
||||||
|
for e in self:
|
||||||
|
if e.name == name:
|
||||||
|
self.contents.remove(e)
|
||||||
|
return
|
||||||
|
raise KeyError
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return self.name
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def name(self):
|
def name(self):
|
||||||
return self.path.name
|
return self.path.name
|
||||||
|
|
Loading…
Reference in New Issue
Block a user