Revision 2287
Added by Aaron Marcuse-Kubitza over 12 years ago
lib/sql_gen.py | ||
---|---|---|
196 | 196 |
''' |
197 | 197 |
if util.is_str(table) and table_is_esc: table = unescape_table(table) |
198 | 198 |
return as_Table(table) |
199 |
|
|
200 |
def col2sql_gen(col, default_table=None, table_is_esc=False): |
|
201 |
'''Converts old-style (tuple-based) columns to sql_gen-compatible values. |
|
202 |
@param table_is_esc If False, assumes any table name is not escaped or that |
|
203 |
re-escaping it will produce the same value. |
|
204 |
''' |
|
205 |
if isinstance(col, Col): return col # already in sql_gen form |
|
206 |
|
|
207 |
table = default_table |
|
208 |
if isinstance(col, tuple): table, col = col |
|
209 |
return Col(col, table2sql_gen(table, table_is_esc)) |
|
210 |
|
|
211 |
def value2sql_gen(value, default_table=None, table_is_esc=False, |
|
212 |
assume_col=False): |
|
213 |
'''Converts old-style (tuple-based) values to sql_gen-compatible values. |
|
214 |
@param table_is_esc If False, assumes any table name is not escaped or that |
|
215 |
re-escaping it will produce the same value. |
|
216 |
''' |
|
217 |
if isinstance(value, Code): return value # already in sql_gen form |
|
218 |
|
|
219 |
is_tuple = isinstance(value, tuple) |
|
220 |
if is_tuple and len(value) == 1: return Literal(value[0]) |
|
221 |
if is_tuple or (assume_col and util.is_str(value)): |
|
222 |
return col2sql_gen(value, default_table, table_is_esc) |
|
223 |
else: return Literal(value) |
Also available in: Unified diff
sql_gen.py: Removed no longer needed col2sql_gen() and value2sql_gen()