summaryrefslogtreecommitdiffstats
path: root/venv/Lib/site-packages/importlib_metadata/__pycache__/_functools.cpython-39.pyc
blob: 3f8f278669faea3ab84c770d40109898152d0984 (plain)
ofshex dumpascii
0000 61 0d 0d 0a 00 00 00 00 e5 2e c3 62 4f 0b 00 00 e3 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a..........bO...................
0020 00 03 00 00 00 40 00 00 00 73 26 00 00 00 64 00 64 01 6c 00 5a 00 64 00 64 01 6c 01 5a 01 64 06 .....@...s&...d.d.l.Z.d.d.l.Z.d.
0040 64 02 64 03 84 01 5a 02 64 04 64 05 84 00 5a 03 64 01 53 00 29 07 e9 00 00 00 00 4e 63 02 00 00 d.d...Z.d.d...Z.d.S.)......Nc...
0060 00 00 00 00 00 00 00 00 00 03 00 00 00 03 00 00 00 03 00 00 00 73 28 00 00 00 88 00 70 0a 74 00 .....................s(.....p.t.
0080 a0 01 a1 00 89 00 87 00 87 01 66 02 64 01 64 02 84 08 7d 02 64 03 64 04 84 00 7c 02 5f 02 7c 02 ..........f.d.d...}.d.d...|._.|.
00a0 53 00 29 05 61 56 07 00 00 0a 20 20 20 20 57 72 61 70 20 6c 72 75 5f 63 61 63 68 65 20 74 6f 20 S.).aV........Wrap.lru_cache.to.
00c0 73 75 70 70 6f 72 74 20 73 74 6f 72 69 6e 67 20 74 68 65 20 63 61 63 68 65 20 64 61 74 61 20 69 support.storing.the.cache.data.i
00e0 6e 20 74 68 65 20 6f 62 6a 65 63 74 20 69 6e 73 74 61 6e 63 65 73 2e 0a 0a 20 20 20 20 41 62 73 n.the.object.instances.......Abs
0100 74 72 61 63 74 73 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 70 61 72 61 64 69 67 6d 20 77 68 65 72 65 tracts.the.common.paradigm.where
0120 20 74 68 65 20 6d 65 74 68 6f 64 20 65 78 70 6c 69 63 69 74 6c 79 20 73 61 76 65 73 20 61 6e 0a .the.method.explicitly.saves.an.
0140 20 20 20 20 75 6e 64 65 72 73 63 6f 72 65 2d 70 72 65 66 69 78 65 64 20 70 72 6f 74 65 63 74 65 ....underscore-prefixed.protecte
0160 64 20 70 72 6f 70 65 72 74 79 20 6f 6e 20 66 69 72 73 74 20 63 61 6c 6c 20 61 6e 64 20 72 65 74 d.property.on.first.call.and.ret
0180 75 72 6e 73 20 74 68 61 74 0a 20 20 20 20 73 75 62 73 65 71 75 65 6e 74 6c 79 2e 0a 0a 20 20 20 urns.that.....subsequently......
01a0 20 3e 3e 3e 20 63 6c 61 73 73 20 4d 79 43 6c 61 73 73 3a 0a 20 20 20 20 2e 2e 2e 20 20 20 20 20 .>>>.class.MyClass:.............
01c0 63 61 6c 6c 73 20 3d 20 30 0a 20 20 20 20 2e 2e 2e 0a 20 20 20 20 2e 2e 2e 20 20 20 20 20 40 6d calls.=.0.....................@m
01e0 65 74 68 6f 64 5f 63 61 63 68 65 0a 20 20 20 20 2e 2e 2e 20 20 20 20 20 64 65 66 20 6d 65 74 68 ethod_cache.............def.meth
0200 6f 64 28 73 65 6c 66 2c 20 76 61 6c 75 65 29 3a 0a 20 20 20 20 2e 2e 2e 20 20 20 20 20 20 20 20 od(self,.value):................
0220 20 73 65 6c 66 2e 63 61 6c 6c 73 20 2b 3d 20 31 0a 20 20 20 20 2e 2e 2e 20 20 20 20 20 20 20 20 .self.calls.+=.1................
0240 20 72 65 74 75 72 6e 20 76 61 6c 75 65 0a 0a 20 20 20 20 3e 3e 3e 20 61 20 3d 20 4d 79 43 6c 61 .return.value......>>>.a.=.MyCla
0260 73 73 28 29 0a 20 20 20 20 3e 3e 3e 20 61 2e 6d 65 74 68 6f 64 28 33 29 0a 20 20 20 20 33 0a 20 ss().....>>>.a.method(3).....3..
0280 20 20 20 3e 3e 3e 20 66 6f 72 20 78 20 69 6e 20 72 61 6e 67 65 28 37 35 29 3a 0a 20 20 20 20 2e ...>>>.for.x.in.range(75):......
02a0 2e 2e 20 20 20 20 20 72 65 73 20 3d 20 61 2e 6d 65 74 68 6f 64 28 78 29 0a 20 20 20 20 3e 3e 3e .......res.=.a.method(x).....>>>
02c0 20 61 2e 63 61 6c 6c 73 0a 20 20 20 20 37 35 0a 0a 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 74 .a.calls.....75......Note.that.t
02e0 68 65 20 61 70 70 61 72 65 6e 74 20 62 65 68 61 76 69 6f 72 20 77 69 6c 6c 20 62 65 20 65 78 61 he.apparent.behavior.will.be.exa
0300 63 74 6c 79 20 6c 69 6b 65 20 74 68 61 74 20 6f 66 20 6c 72 75 5f 63 61 63 68 65 0a 20 20 20 20 ctly.like.that.of.lru_cache.....
0320 65 78 63 65 70 74 20 74 68 61 74 20 74 68 65 20 63 61 63 68 65 20 69 73 20 73 74 6f 72 65 64 20 except.that.the.cache.is.stored.
0340 6f 6e 20 65 61 63 68 20 69 6e 73 74 61 6e 63 65 2c 20 73 6f 20 76 61 6c 75 65 73 20 69 6e 20 6f on.each.instance,.so.values.in.o
0360 6e 65 0a 20 20 20 20 69 6e 73 74 61 6e 63 65 20 77 69 6c 6c 20 6e 6f 74 20 66 6c 75 73 68 20 76 ne.....instance.will.not.flush.v
0380 61 6c 75 65 73 20 66 72 6f 6d 20 61 6e 6f 74 68 65 72 2c 20 61 6e 64 20 77 68 65 6e 20 61 6e 20 alues.from.another,.and.when.an.
03a0 69 6e 73 74 61 6e 63 65 20 69 73 0a 20 20 20 20 64 65 6c 65 74 65 64 2c 20 73 6f 20 61 72 65 20 instance.is.....deleted,.so.are.
03c0 74 68 65 20 63 61 63 68 65 64 20 76 61 6c 75 65 73 20 66 6f 72 20 74 68 61 74 20 69 6e 73 74 61 the.cached.values.for.that.insta
03e0 6e 63 65 2e 0a 0a 20 20 20 20 3e 3e 3e 20 62 20 3d 20 4d 79 43 6c 61 73 73 28 29 0a 20 20 20 20 nce.......>>>.b.=.MyClass().....
0400 3e 3e 3e 20 66 6f 72 20 78 20 69 6e 20 72 61 6e 67 65 28 33 35 29 3a 0a 20 20 20 20 2e 2e 2e 20 >>>.for.x.in.range(35):.........
0420 20 20 20 20 72 65 73 20 3d 20 62 2e 6d 65 74 68 6f 64 28 78 29 0a 20 20 20 20 3e 3e 3e 20 62 2e ....res.=.b.method(x).....>>>.b.
0440 63 61 6c 6c 73 0a 20 20 20 20 33 35 0a 20 20 20 20 3e 3e 3e 20 61 2e 6d 65 74 68 6f 64 28 30 29 calls.....35.....>>>.a.method(0)
0460 0a 20 20 20 20 30 0a 20 20 20 20 3e 3e 3e 20 61 2e 63 61 6c 6c 73 0a 20 20 20 20 37 35 0a 0a 20 .....0.....>>>.a.calls.....75...
0480 20 20 20 4e 6f 74 65 20 74 68 61 74 20 69 66 20 6d 65 74 68 6f 64 20 68 61 64 20 62 65 65 6e 20 ...Note.that.if.method.had.been.
04a0 64 65 63 6f 72 61 74 65 64 20 77 69 74 68 20 60 60 66 75 6e 63 74 6f 6f 6c 73 2e 6c 72 75 5f 63 decorated.with.``functools.lru_c
04c0 61 63 68 65 28 29 60 60 2c 0a 20 20 20 20 61 2e 63 61 6c 6c 73 20 77 6f 75 6c 64 20 68 61 76 65 ache()``,.....a.calls.would.have
04e0 20 62 65 65 6e 20 37 36 20 28 64 75 65 20 74 6f 20 74 68 65 20 63 61 63 68 65 64 20 76 61 6c 75 .been.76.(due.to.the.cached.valu
0500 65 20 6f 66 20 30 20 68 61 76 69 6e 67 20 62 65 65 6e 0a 20 20 20 20 66 6c 75 73 68 65 64 20 62 e.of.0.having.been.....flushed.b
0520 79 20 74 68 65 20 27 62 27 20 69 6e 73 74 61 6e 63 65 29 2e 0a 0a 20 20 20 20 43 6c 65 61 72 20 y.the.'b'.instance).......Clear.
0540 74 68 65 20 63 61 63 68 65 20 77 69 74 68 20 60 60 2e 63 61 63 68 65 5f 63 6c 65 61 72 28 29 60 the.cache.with.``.cache_clear()`
0560 60 0a 0a 20 20 20 20 3e 3e 3e 20 61 2e 6d 65 74 68 6f 64 2e 63 61 63 68 65 5f 63 6c 65 61 72 28 `......>>>.a.method.cache_clear(
0580 29 0a 0a 20 20 20 20 53 61 6d 65 20 66 6f 72 20 61 20 6d 65 74 68 6f 64 20 74 68 61 74 20 68 61 )......Same.for.a.method.that.ha
05a0 73 6e 27 74 20 79 65 74 20 62 65 65 6e 20 63 61 6c 6c 65 64 2e 0a 0a 20 20 20 20 3e 3e 3e 20 63 sn't.yet.been.called.......>>>.c
05c0 20 3d 20 4d 79 43 6c 61 73 73 28 29 0a 20 20 20 20 3e 3e 3e 20 63 2e 6d 65 74 68 6f 64 2e 63 61 .=.MyClass().....>>>.c.method.ca
05e0 63 68 65 5f 63 6c 65 61 72 28 29 0a 0a 20 20 20 20 41 6e 6f 74 68 65 72 20 63 61 63 68 65 20 77 che_clear()......Another.cache.w
0600 72 61 70 70 65 72 20 6d 61 79 20 62 65 20 73 75 70 70 6c 69 65 64 3a 0a 0a 20 20 20 20 3e 3e 3e rapper.may.be.supplied:......>>>
0620 20 63 61 63 68 65 20 3d 20 66 75 6e 63 74 6f 6f 6c 73 2e 6c 72 75 5f 63 61 63 68 65 28 6d 61 78 .cache.=.functools.lru_cache(max
0640 73 69 7a 65 3d 32 29 0a 20 20 20 20 3e 3e 3e 20 4d 79 43 6c 61 73 73 2e 6d 65 74 68 6f 64 32 20 size=2).....>>>.MyClass.method2.
0660 3d 20 6d 65 74 68 6f 64 5f 63 61 63 68 65 28 6c 61 6d 62 64 61 20 73 65 6c 66 3a 20 33 2c 20 63 =.method_cache(lambda.self:.3,.c
0680 61 63 68 65 5f 77 72 61 70 70 65 72 3d 63 61 63 68 65 29 0a 20 20 20 20 3e 3e 3e 20 61 20 3d 20 ache_wrapper=cache).....>>>.a.=.
06a0 4d 79 43 6c 61 73 73 28 29 0a 20 20 20 20 3e 3e 3e 20 61 2e 6d 65 74 68 6f 64 32 28 29 0a 20 20 MyClass().....>>>.a.method2()...
06c0 20 20 33 0a 0a 20 20 20 20 43 61 75 74 69 6f 6e 20 2d 20 64 6f 20 6e 6f 74 20 73 75 62 73 65 71 ..3......Caution.-.do.not.subseq
06e0 75 65 6e 74 6c 79 20 77 72 61 70 20 74 68 65 20 6d 65 74 68 6f 64 20 77 69 74 68 20 61 6e 6f 74 uently.wrap.the.method.with.anot
0700 68 65 72 20 64 65 63 6f 72 61 74 6f 72 2c 20 73 75 63 68 0a 20 20 20 20 61 73 20 60 60 40 70 72 her.decorator,.such.....as.``@pr
0720 6f 70 65 72 74 79 60 60 2c 20 77 68 69 63 68 20 63 68 61 6e 67 65 73 20 74 68 65 20 73 65 6d 61 operty``,.which.changes.the.sema
0740 6e 74 69 63 73 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 0a 0a 20 20 20 20 53 65 65 20 ntics.of.the.function.......See.
0760 61 6c 73 6f 0a 20 20 20 20 68 74 74 70 3a 2f 2f 63 6f 64 65 2e 61 63 74 69 76 65 73 74 61 74 65 also.....http://code.activestate
0780 2e 63 6f 6d 2f 72 65 63 69 70 65 73 2f 35 37 37 34 35 32 2d 61 2d 6d 65 6d 6f 69 7a 65 2d 64 65 .com/recipes/577452-a-memoize-de
07a0 63 6f 72 61 74 6f 72 2d 66 6f 72 2d 69 6e 73 74 61 6e 63 65 2d 6d 65 74 68 6f 64 73 2f 0a 20 20 corator-for-instance-methods/...
07c0 20 20 66 6f 72 20 61 6e 6f 74 68 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 61 6e 64 ..for.another.implementation.and
07e0 20 61 64 64 69 74 69 6f 6e 61 6c 20 6a 75 73 74 69 66 69 63 61 74 69 6f 6e 2e 0a 20 20 20 20 63 .additional.justification......c
0800 01 00 00 00 00 00 00 00 00 00 00 00 05 00 00 00 04 00 00 00 1f 00 00 00 73 30 00 00 00 74 00 a0 ........................s0...t..
0820 01 88 01 7c 00 a1 02 7d 03 88 00 7c 03 83 01 7d 04 74 02 7c 00 88 01 6a 03 7c 04 83 03 01 00 7c ...|...}...|...}.t.|...j.|.....|
0840 04 7c 01 69 00 7c 02 a4 01 8e 01 53 00 a9 01 4e 29 04 da 05 74 79 70 65 73 da 0a 4d 65 74 68 6f .|.i.|.....S...N)...types..Metho
0860 64 54 79 70 65 da 07 73 65 74 61 74 74 72 da 08 5f 5f 6e 61 6d 65 5f 5f 29 05 da 04 73 65 6c 66 dType..setattr..__name__)...self
0880 da 04 61 72 67 73 da 06 6b 77 61 72 67 73 5a 0c 62 6f 75 6e 64 5f 6d 65 74 68 6f 64 5a 0d 63 61 ..args..kwargsZ.bound_methodZ.ca
08a0 63 68 65 64 5f 6d 65 74 68 6f 64 a9 02 da 0d 63 61 63 68 65 5f 77 72 61 70 70 65 72 da 06 6d 65 ched_method....cache_wrapper..me
08c0 74 68 6f 64 a9 00 fa 62 43 3a 5c 55 73 65 72 73 5c 61 64 6d 6f 6e 5c 50 79 63 68 61 72 6d 50 72 thod...bC:\Users\admon\PycharmPr
08e0 6f 6a 65 63 74 73 5c 63 6f 64 69 6e 67 5f 63 6c 75 62 5c 76 65 6e 76 5c 4c 69 62 5c 73 69 74 65 ojects\coding_club\venv\Lib\site
0900 2d 70 61 63 6b 61 67 65 73 5c 69 6d 70 6f 72 74 6c 69 62 5f 6d 65 74 61 64 61 74 61 2f 5f 66 75 -packages\importlib_metadata/_fu
0920 6e 63 74 6f 6f 6c 73 2e 70 79 da 07 77 72 61 70 70 65 72 4b 00 00 00 73 08 00 00 00 00 02 0c 01 nctools.py..wrapperK...s........
0940 08 01 0e 01 7a 1d 6d 65 74 68 6f 64 5f 63 61 63 68 65 2e 3c 6c 6f 63 61 6c 73 3e 2e 77 72 61 70 ....z.method_cache.<locals>.wrap
0960 70 65 72 63 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 53 00 00 00 73 04 00 00 perc....................S...s...
0980 00 64 00 53 00 72 02 00 00 00 72 0d 00 00 00 72 0d 00 00 00 72 0d 00 00 00 72 0d 00 00 00 72 0e .d.S.r....r....r....r....r....r.
09a0 00 00 00 da 08 3c 6c 61 6d 62 64 61 3e 53 00 00 00 f3 00 00 00 00 7a 1e 6d 65 74 68 6f 64 5f 63 .....<lambda>S........z.method_c
09c0 61 63 68 65 2e 3c 6c 6f 63 61 6c 73 3e 2e 3c 6c 61 6d 62 64 61 3e 29 03 da 09 66 75 6e 63 74 6f ache.<locals>.<lambda>)...functo
09e0 6f 6c 73 da 09 6c 72 75 5f 63 61 63 68 65 da 0b 63 61 63 68 65 5f 63 6c 65 61 72 29 03 72 0c 00 ols..lru_cache..cache_clear).r..
0a00 00 00 72 0b 00 00 00 72 0f 00 00 00 72 0d 00 00 00 72 0a 00 00 00 72 0e 00 00 00 da 0c 6d 65 74 ..r....r....r....r....r......met
0a20 68 6f 64 5f 63 61 63 68 65 06 00 00 00 73 08 00 00 00 00 43 0c 02 0e 08 0a 02 72 15 00 00 00 63 hod_cache....s.....C......r....c
0a40 01 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 04 00 00 00 03 00 00 00 73 1a 00 00 00 74 00 a0 ........................s....t..
0a60 01 88 00 a1 01 87 00 66 01 64 01 64 02 84 08 83 01 7d 01 7c 01 53 00 29 03 7a a5 0a 20 20 20 20 .......f.d.d.....}.|.S.).z......
0a80 57 72 61 70 20 66 75 6e 63 20 73 6f 20 69 74 27 73 20 6e 6f 74 20 63 61 6c 6c 65 64 20 69 66 20 Wrap.func.so.it's.not.called.if.
0aa0 69 74 73 20 66 69 72 73 74 20 70 61 72 61 6d 20 69 73 20 4e 6f 6e 65 0a 0a 20 20 20 20 3e 3e 3e its.first.param.is.None......>>>
0ac0 20 70 72 69 6e 74 5f 74 65 78 74 20 3d 20 70 61 73 73 5f 6e 6f 6e 65 28 70 72 69 6e 74 29 0a 20 .print_text.=.pass_none(print)..
0ae0 20 20 20 3e 3e 3e 20 70 72 69 6e 74 5f 74 65 78 74 28 27 74 65 78 74 27 29 0a 20 20 20 20 74 65 ...>>>.print_text('text').....te
0b00 78 74 0a 20 20 20 20 3e 3e 3e 20 70 72 69 6e 74 5f 74 65 78 74 28 4e 6f 6e 65 29 0a 20 20 20 20 xt.....>>>.print_text(None).....
0b20 63 01 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 04 00 00 00 1f 00 00 00 73 22 00 00 00 7c 00 c........................s"...|.
0b40 64 00 75 01 72 1e 88 00 7c 00 67 01 7c 01 a2 01 52 00 69 00 7c 02 a4 01 8e 01 53 00 64 00 53 00 d.u.r...|.g.|...R.i.|.....S.d.S.
0b60 72 02 00 00 00 72 0d 00 00 00 29 03 da 05 70 61 72 61 6d 72 08 00 00 00 72 09 00 00 00 a9 01 da r....r....)...paramr....r.......
0b80 04 66 75 6e 63 72 0d 00 00 00 72 0e 00 00 00 72 0f 00 00 00 63 00 00 00 73 04 00 00 00 00 02 08 .funcr....r....r....c...s.......
0ba0 01 7a 1a 70 61 73 73 5f 6e 6f 6e 65 2e 3c 6c 6f 63 61 6c 73 3e 2e 77 72 61 70 70 65 72 29 02 72 .z.pass_none.<locals>.wrapper).r
0bc0 12 00 00 00 da 05 77 72 61 70 73 29 02 72 18 00 00 00 72 0f 00 00 00 72 0d 00 00 00 72 17 00 00 ......wraps).r....r....r....r...
0be0 00 72 0e 00 00 00 da 09 70 61 73 73 5f 6e 6f 6e 65 59 00 00 00 73 06 00 00 00 00 0a 08 01 0e 04 .r......pass_noneY...s..........
0c00 72 1a 00 00 00 29 01 4e 29 04 72 03 00 00 00 72 12 00 00 00 72 15 00 00 00 72 1a 00 00 00 72 0d r....).N).r....r....r....r....r.
0c20 00 00 00 72 0d 00 00 00 72 0d 00 00 00 72 0e 00 00 00 da 08 3c 6d 6f 64 75 6c 65 3e 01 00 00 00 ...r....r....r......<module>....
0c40 73 06 00 00 00 08 01 08 04 0a 53 s.........S