=Ogv6ddlZddlmZGddeZdS)N) method_cachecneZdZdZdZdZdZdZdZfdZ dZ e fd Z d Z dd ZxZS) FoldedCasea{ A case insensitive string class; behaves just like str except compares equal when the only variation is case. >>> s = FoldedCase('hello world') >>> s == 'Hello World' True >>> 'Hello World' == s True >>> s != 'Hello World' False >>> s.index('O') 4 >>> s.split('O') ['hell', ' w', 'rld'] >>> sorted(map(FoldedCase, ['GAMMA', 'alpha', 'Beta'])) ['alpha', 'Beta', 'GAMMA'] Sequence membership is straightforward. >>> "Hello World" in [s] True >>> s in ["Hello World"] True You may test for set inclusion, but candidate and elements must both be folded. >>> FoldedCase("Hello World") in {s} True >>> s in {FoldedCase("Hello World")} True String inclusion works as long as the FoldedCase object is on the right. >>> "hello" in FoldedCase("Hello World") True But not if the FoldedCase object is on the left: >>> FoldedCase('hello') in 'Hello World' False In that case, use in_: >>> FoldedCase('hello').in_('Hello World') True >>> FoldedCase('hello') > FoldedCase('Hello') False cV||kSNlowerselfothers ?/opt/alt/python311/lib64/python3.11/importlib/metadata/_text.py__lt__zFoldedCase.__lt__Czz||ekkmm++cV||kSrr r s r__gt__zFoldedCase.__gt__FrrcV||kSrr r s r__eq__zFoldedCase.__eq__Izz||u{{}},,rcV||kSrr r s r__ne__zFoldedCase.__ne__LrrcDt|Sr)hashr )r s r__hash__zFoldedCase.__hash__OsDJJLL!!!rct|Sr)superr __contains__)r r __class__s rrzFoldedCase.__contains__Rs+ww}}++EKKMM:::rc$|t|vS)zDoes self appear in other?)rr s rin_zFoldedCase.in_Usz%((((rcDtSr)rr )r rs rr zFoldedCase.lowerZsww}}rct||Sr)r index)r subs rr$zFoldedCase.index^s&zz||!!#))++...r rctjtj|tj}|||Sr)recompileescapeIsplit)r splittermaxsplitpatterns rr,zFoldedCase.splitas3*RYx00"$77}}T8,,,r)r&r)__name__ __module__ __qualname____doc__rrrrrrr!rr r$r, __classcell__)rs@rrrs99v,,,,,,------""";;;;;))) \///--------rr)r( _functoolsrstrrrrr8s^ $$$$$$\-\-\-\-\-\-\-\-\-\-r