(
self,
bindparam,
render_literal_value=NO_ARG,
bind_expression_template=None,
**kw,
)
| 4048 | raise NotImplementedError() |
| 4049 | |
| 4050 | def render_literal_bindparam( |
| 4051 | self, |
| 4052 | bindparam, |
| 4053 | render_literal_value=NO_ARG, |
| 4054 | bind_expression_template=None, |
| 4055 | **kw, |
| 4056 | ): |
| 4057 | if render_literal_value is not NO_ARG: |
| 4058 | value = render_literal_value |
| 4059 | else: |
| 4060 | if bindparam.value is None and bindparam.callable is None: |
| 4061 | op = kw.get("_binary_op", None) |
| 4062 | if op and op not in (operators.is_, operators.is_not): |
| 4063 | util.warn_limited( |
| 4064 | "Bound parameter '%s' rendering literal NULL in a SQL " |
| 4065 | "expression; comparisons to NULL should not use " |
| 4066 | "operators outside of 'is' or 'is not'", |
| 4067 | (bindparam.key,), |
| 4068 | ) |
| 4069 | return self.process(sqltypes.NULLTYPE, **kw) |
| 4070 | value = bindparam.effective_value |
| 4071 | |
| 4072 | if bindparam.expanding: |
| 4073 | leep = self._literal_execute_expanding_parameter_literal_binds |
| 4074 | to_update, replacement_expr = leep( |
| 4075 | bindparam, |
| 4076 | value, |
| 4077 | bind_expression_template=bind_expression_template, |
| 4078 | ) |
| 4079 | return replacement_expr |
| 4080 | else: |
| 4081 | return self.render_literal_value(value, bindparam.type) |
| 4082 | |
| 4083 | def render_literal_value( |
| 4084 | self, value: Any, type_: sqltypes.TypeEngine[Any] |
no test coverage detected