a0biSSKrSSKrSr\RS5r\R S\RR4Sj5r Sr g)NcF^[R"T5U4Sj5nU$)z Wrap func so it's not called if its first param is None >>> print_text = pass_none(print) >>> print_text('text') text >>> print_text(None) c$>Ub T"U/UQ70UD6$g)N)paramargskwargsfuncs ڙ/builddir/build/BUILDROOT/alt-python313-setuptools-69.0.2-3.el8.x86_64/opt/alt/python313/lib/python3.13/site-packages/setuptools/_distutils/_functools.pywrapperpass_none..wrappers#  /// / ) functoolswraps)r r s` r pass_noners'__T00 Nr c U"U6$)zSplat args to func.rrr s r _splat_innerrs ;r rcU"S0UD6$)zSplat kargs to func as kwargs.rrrs r _rs <$<r ch[R"U5"[R"[US95$)aM Wrap func to expect its parameters to be passed positionally in a tuple. Has a similar effect to that of ``itertools.starmap`` over simple ``map``. >>> import itertools, operator >>> pairs = [(-1, 1), (0, 2)] >>> _ = tuple(itertools.starmap(print, pairs)) -1 1 0 2 >>> _ = tuple(map(splat(print), pairs)) -1 1 0 2 The approach generalizes to other iterators that don't have a "star" equivalent, such as a "starfilter". >>> list(filter(splat(operator.add), pairs)) [(0, 2)] Splat also accepts a mapping argument. >>> def is_nice(msg, code): ... return "smile" in msg or code == 0 >>> msgs = [ ... dict(msg='smile!', code=20), ... dict(msg='error :(', code=1), ... dict(msg='unknown', code=0), ... ] >>> for msg in filter(splat(is_nice), msgs): ... print(msg) {'msg': 'smile!', 'code': 20} {'msg': 'unknown', 'code': 0} r )rrpartialrrs r splatr%s&H ??4 !2!2r s[&  KOO # # $Mr