• Raymond Hettinger's avatar
    SF Patch #661440: Refactor and streamline PyCFunction_Call · bf43f8af
    Raymond Hettinger yazdı
    Refactor code in PyCFunction_Call giving a modest (tiny) speed boost,
    a slight improvement in semantics (now detects invalid flag combinations),
    and (arguably) improved clarity (making it blindingly clear which flag
    combinations are allowed).  All this comes at a cost of a few lines of
    code duplication.
    
    * Folded test for METH_KEYWORDS into the switch/case.
    * Deferred testing for an empty dictionary until when and where needed.
    * Make a similar deferral for filling the "size" variable.
    * Inverted the dictionary test so that the common case falls though
      instead of making a jump.
    bf43f8af
methodobject.c 7.39 KB