'Apply the prefixes to the query and return the newly resulting
``Query``.
:param \*prefixes: optional prefixes, typically strings,
not using any commas.   In particular is useful for MySQL keywords.
e.g.::
query = sess.query(User.name).\
prefix_with(\'HIGH_PRIORITY\').\
prefix_with(\'SQL_SMALL_RESULT\', \'ALL\')
Would render::
SELECT HIGH_PRIORITY SQL_SMALL_RESULT ALL users.name AS users_name
FROM users
.. versionadded:: 0.7.7'

@_generative()
def prefix_with(self, *prefixes):

    if self._prefixes:
        self._prefixes += prefixes
    else:
        self._prefixes = prefixes
