in ddbtools/table.py [0:0]
def get_table_names(self, start_table_name: str=None, table_names: list=None) -> list:
"""Get a complete list of DynamoDB tables in this region"""
if table_names is None:
table_names = []
response = None
if not start_table_name:
response = self.dynamodb_client.list_tables()
else:
# if there are more than 100 table names returned, recurse to get a new page of table names
response = self.dynamodb_client.list_tables(ExclusiveStartTableName=start_table_name)
paginated_table_names = response['TableNames']
table_names.extend(paginated_table_names)
if 'LastEvaluatedTableName' in response:
self.get_table_names(start_table_name=response['LastEvaluatedTableName'], table_names=table_names)
return table_names