def iter_list_table_metadata(
self,
catalog_name: "capo_athena.types.catalog_name_string.CatalogNameString",
database_name: "capo_athena.types.name_string.NameString",
*,
config_overrides: Optional[AthenaClientConfig] = None,
expression: Optional[
"capo_athena.types.expression_string.ExpressionString"
] = None,
next_token: Optional["capo_athena.types.token.Token"] = None,
max_results: Optional[
"capo_athena.types.max_table_metadata_count.MaxTableMetadataCount"
] = None,
work_group: Optional["capo_athena.types.work_group_name.WorkGroupName"] = None,
) -> "Iterator[capo_athena.types.table_metadata.TableMetadata]":
_token = next_token
while True:
_response = self.list_table_metadata(
catalog_name,
database_name,
config_overrides=config_overrides,
expression=expression,
next_token=_token,
max_results=max_results,
work_group=work_group,
)
_page = _resolve_path(_response, ("table_metadata_list",))
for _item in _page or []:
yield _item
_token = _resolve_path(_response, ("next_token",))
if not _token:
break