@@ -114,7 +114,8 @@ async def _get(key: str, byte_range: ByteRangeRequest) -> Buffer | None:
114114
115115 async def exists (self , key : str ) -> bool :
116116 # docstring inherited
117- return self .resolve_key (key ) in self ._store_dict
117+ key_absolute = self .resolve_key (key )
118+ return key_absolute in self ._store_dict
118119
119120 async def set (self , key : str , value : Buffer , byte_range : tuple [int , int ] | None = None ) -> None :
120121 # docstring inherited
@@ -123,25 +124,27 @@ async def set(self, key: str, value: Buffer, byte_range: tuple[int, int] | None
123124 assert isinstance (key , str )
124125 if not isinstance (value , Buffer ):
125126 raise TypeError (f"Expected Buffer. Got { type (value )} ." )
126- key_abs = self .resolve_key (key )
127+ key_absolute = self .resolve_key (key )
127128 if byte_range is not None :
128- buf = self ._store_dict [key_abs ]
129+ buf = self ._store_dict [key_absolute ]
129130 buf [byte_range [0 ] : byte_range [1 ]] = value
130- self ._store_dict [key_abs ] = buf
131+ self ._store_dict [key_absolute ] = buf
131132 else :
132- self ._store_dict [key_abs ] = value
133+ self ._store_dict [key_absolute ] = value
133134
134135 async def set_if_not_exists (self , key : str , value : Buffer ) -> None :
135136 # docstring inherited
136137 self ._check_writable ()
137138 await self ._ensure_open ()
138- self ._store_dict .setdefault (self .resolve_key (key ), value )
139+ key_absolute = self .resolve_key (key )
140+ self ._store_dict .setdefault (key_absolute , value )
139141
140142 async def delete (self , key : str ) -> None :
141143 # docstring inherited
142144 self ._check_writable ()
145+ key_absolute = self .resolve_key (key )
143146 try :
144- del self ._store_dict [self . resolve_key ( key ) ]
147+ del self ._store_dict [key_absolute ]
145148 except KeyError :
146149 pass
147150
@@ -155,25 +158,25 @@ async def list(self) -> AsyncGenerator[str, None]:
155158
156159 async def list_prefix (self , prefix : str ) -> AsyncGenerator [str , None ]:
157160 # docstring inherited
158- prefix_abs = self .resolve_key (prefix )
161+ prefix_absolute = self .resolve_key (prefix )
159162 for key in self ._store_dict :
160- if key .startswith (prefix_abs ):
161- yield key .removeprefix (prefix_abs ).lstrip ("/" )
163+ if key .startswith (prefix_absolute ):
164+ yield key .removeprefix (prefix_absolute ).lstrip ("/" )
162165
163166 async def list_dir (self , prefix : str ) -> AsyncGenerator [str , None ]:
164167 # docstring inherited
165- prefix = self .resolve_key (prefix )
168+ prefix_absolute = self .resolve_key (prefix )
166169
167- if prefix == "" :
170+ if prefix_absolute == "" :
168171 keys_unique = {k .split ("/" )[0 ] for k in self ._store_dict }
169172 else :
170173 # Our dictionary doesn't contain directory markers, but we want to include
171174 # a pseudo directory when there's a nested item and we're listing an
172175 # intermediate level.
173176 keys_unique = {
174- key .removeprefix (prefix + "/" ).split ("/" )[0 ]
177+ key .removeprefix (prefix_absolute + "/" ).split ("/" )[0 ]
175178 for key in self ._store_dict
176- if key .startswith (prefix + "/" ) and key != prefix
179+ if key .startswith (prefix_absolute + "/" ) and key != prefix_absolute
177180 }
178181
179182 for key in keys_unique :
0 commit comments