MCPcopy Create free account
hub / github.com/sqlalchemy/sqlalchemy / _truncated_identifier

Method _truncated_identifier

lib/sqlalchemy/sql/compiler.py:3956–3975  ·  view source on GitHub ↗
(
        self, ident_class: str, name: _truncated_label
    )

Source from the content-addressed store, hash-verified

3954 return bind_name
3955
3956 def _truncated_identifier(
3957 self, ident_class: str, name: _truncated_label
3958 ) -> str:
3959 if (ident_class, name) in self.truncated_names:
3960 return self.truncated_names[(ident_class, name)]
3961
3962 anonname = name.apply_map(self.anon_map)
3963
3964 if len(anonname) > self.label_length - 6:
3965 counter = self._truncated_counters.get(ident_class, 1)
3966 truncname = (
3967 anonname[0 : max(self.label_length - 6, 0)]
3968 + "_"
3969 + hex(counter)[2:]
3970 )
3971 self._truncated_counters[ident_class] = counter + 1
3972 else:
3973 truncname = anonname
3974 self.truncated_names[(ident_class, name)] = truncname
3975 return truncname
3976
3977 def _anonymize(self, name: str) -> str:
3978 return name % self.anon_map

Callers 7

visit_labelMethod · 0.95
visit_columnMethod · 0.95
_truncate_bindparamMethod · 0.95
visit_cteMethod · 0.95
visit_aliasMethod · 0.95
visit_valuesMethod · 0.95
visit_tableMethod · 0.95

Calls 3

maxClass · 0.85
apply_mapMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected