• Vincent Pelletier's avatar
    SQLExpression: Fold _getSelectDict into __init__, its only caller. · 028060e6
    Vincent Pelletier authored
    _getSelectDict was also calling itself on sub-sql_expressions, but this
    was useless: they would already have called it, and discarded one of its
    returned values. Instead, preserve both returned values in __init__ and
    access these attributes directly when iterating over sub-sql_expressions.
    Also, fold canMergeSelectDict back into its only 2 call places, saving one
    getattr and one call.
    Also, get rid of a few properties which were only used in _getSelectDict.
    Also, get rid of two iterable copies: sql_expression_list when it is
    already a list (no need to cast it again to a list, we just built one with
    the list comprehension), and select_dict being cast into a list when
    entering _getSelectDict, despite not being used (besides in extra
    _getSelectDict calls, which are now entirely avoided).
    028060e6
SQLExpression.py 15.3 KB