Skip to content

Commit

Permalink
Merge pull request #517 from bagel897/executemany
Browse files Browse the repository at this point in the history
Change adding names to use _executemany()
  • Loading branch information
lieryan committed Nov 4, 2022
2 parents b0e8921 + 4f9ec85 commit 1de7bc2
Showing 1 changed file with 16 additions and 12 deletions.
28 changes: 16 additions & 12 deletions rope/contrib/autoimport/sqlite.py
Original file line number Diff line number Diff line change
Expand Up @@ -468,21 +468,25 @@ def _removed(self, resource):
def _add_future_names(self, names: Future):
self._add_names(names.result())

@staticmethod
def _convert_name(name: Name) -> tuple:
return (
name.name,
name.modname,
name.package,
name.source.value,
name.name_type.value,
)

def _add_names(self, names: Iterable[Name]):
for name in names:
self._add_name(name)
if names is not None:
self._executemany(
models.Name.objects.insert_into(),
[self._convert_name(name) for name in names],
)

def _add_name(self, name: Name):
self._execute(
models.Name.objects.insert_into(),
(
name.name,
name.modname,
name.package,
name.source.value,
name.name_type.value,
),
)
self._execute(models.Name.objects.insert_into(), self._convert_name(name))

def _find_package_path(self, target_name: str) -> Optional[Package]:
if target_name in sys.builtin_module_names:
Expand Down

0 comments on commit 1de7bc2

Please sign in to comment.