Viewing File: /opt/alt/python311/lib64/python3.11/importlib/metadata/__pycache__/_text.cpython-311.pyc
fv 6 d dl Z ddlmZ G d de ZdS ) N )method_cachec n e Zd ZdZd Zd Zd Zd Zd Z fdZ d Z
e fd Zd
Z
dd
Z xZS )
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
c V | | k S Nlowerselfothers ?/opt/alt/python311/lib64/python3.11/importlib/metadata/_text.py__lt__zFoldedCase.__lt__C zz||ekkmm++ c V | | k S r r r s r __gt__zFoldedCase.__gt__F r r c V | | k S r r r s r __eq__zFoldedCase.__eq__I zz||u{{}},,r c V | | k S r r r s r __ne__zFoldedCase.__ne__L r r c D t | S r )hashr
)r s r __hash__zFoldedCase.__hash__O s DJJLL!!!r c t | S r )superr
__contains__)r r
__class__s r r zFoldedCase.__contains__R s+ ww}}++EKKMM:::r c $ | t | v S )zDoes self appear in other?)r r s r in_zFoldedCase.in_U s z%((((r c D t S r )r r
)r r s r r
zFoldedCase.lowerZ s ww}}r c t | | S r )r
index)r subs r r$ zFoldedCase.index^ s&