Hold a reference to one or many columns.
| 87 | |
| 88 | |
| 89 | class Columns(TableColumns): |
| 90 | """Hold a reference to one or many columns.""" |
| 91 | |
| 92 | def __init__(self, table, columns, quote_name, col_suffixes=()): |
| 93 | self.quote_name = quote_name |
| 94 | self.col_suffixes = col_suffixes |
| 95 | super().__init__(table, columns) |
| 96 | |
| 97 | def __str__(self): |
| 98 | def col_str(column, idx): |
| 99 | col = self.quote_name(column) |
| 100 | try: |
| 101 | suffix = self.col_suffixes[idx] |
| 102 | if suffix: |
| 103 | col = "{} {}".format(col, suffix) |
| 104 | except IndexError: |
| 105 | pass |
| 106 | return col |
| 107 | |
| 108 | return ", ".join( |
| 109 | col_str(column, idx) for idx, column in enumerate(self.columns) |
| 110 | ) |
| 111 | |
| 112 | |
| 113 | class IndexName(TableColumns): |
no outgoing calls