From ed804071b4579ab6e03fca2c45389dce779fcbc4 Mon Sep 17 00:00:00 2001 From: Matt Wala <wala1@illinois.edu> Date: Sat, 20 May 2017 18:23:26 -0500 Subject: [PATCH] UniqueNameGenerator: Add a _name_added() callback. --- pytools/__init__.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pytools/__init__.py b/pytools/__init__.py index 0755496..a0470d8 100644 --- a/pytools/__init__.py +++ b/pytools/__init__.py @@ -1775,6 +1775,11 @@ class UniqueNameGenerator: def is_name_conflicting(self, name): return name in self.existing_names + def _name_added(self, name): + """Callback to alert subclasses when a name has been added. + """ + pass + def add_name(self, name): if self.is_name_conflicting(name): raise ValueError("name '%s' conflicts with existing names") @@ -1782,6 +1787,7 @@ class UniqueNameGenerator: raise ValueError("name '%s' does not start with required prefix") self.existing_names.add(name) + self._name_added(name) def add_names(self, names): for name in names: @@ -1801,6 +1807,7 @@ class UniqueNameGenerator: var_name = intern(var_name) self.existing_names.add(var_name) + self._name_added(var_name) return var_name # }}} -- GitLab