[Python-checkins] [python/cpython] d7e643: bpo-28598: Support __rmod__ for RHS subclasses of ...

GitHub noreply at github.com
Thu Feb 23 08:38:06 EST 2017


  Branch: refs/heads/master
  Home:   https://github.com/python/cpython
  Commit: d7e64337ef45085792b382a09f5b3a45d3687c8c
      https://github.com/python/cpython/commit/d7e64337ef45085792b382a09f5b3a45d3687c8c
  Author: Martijn Pieters <github.com at zopatista.com>
  Date:   2017-02-23 (Thu, 23 Feb 2017)

  Changed paths:
    M Lib/test/test_unicode.py
    M Misc/NEWS
    M Python/ceval.c

  Log Message:
  -----------
  bpo-28598: Support __rmod__ for RHS subclasses of str in % string formatting operations (#51)

When you use `'%s' % SubClassOfStr()`, where `SubClassOfStr.__rmod__` exists, the reverse operation is ignored as normally such string formatting operations use the `PyUnicode_Format()` fast path. This patch tests for subclasses of `str` first and picks the slow path in that case.

Patch by Martijn Pieters.




More information about the Python-checkins mailing list