Issue 22189: Add missing methods to UserString · python/cpython@573b44c (original) (raw)

`@@ -1060,6 +1060,8 @@ def int(self): return int(self.data)

`

1060

1060

`def float(self): return float(self.data)

`

1061

1061

`def complex(self): return complex(self.data)

`

1062

1062

`def hash(self): return hash(self.data)

`

``

1063

`+

def getnewargs(self):

`

``

1064

`+

return (self.data[:],)

`

1063

1065

``

1064

1066

`def eq(self, string):

`

1065

1067

`if isinstance(string, UserString):

`

`@@ -1104,9 +1106,13 @@ def mul(self, n):

`

1104

1106

`rmul = mul

`

1105

1107

`def mod(self, args):

`

1106

1108

`return self.class(self.data % args)

`

``

1109

`+

def rmod(self, format):

`

``

1110

`+

return self.class(format % args)

`

1107

1111

``

1108

1112

`# the following methods are defined in alphabetical order:

`

1109

1113

`def capitalize(self): return self.class(self.data.capitalize())

`

``

1114

`+

def casefold(self):

`

``

1115

`+

return self.class(self.data.casefold())

`

1110

1116

`def center(self, width, *args):

`

1111

1117

`return self.class(self.data.center(width, *args))

`

1112

1118

`def count(self, sub, start=0, end=_sys.maxsize):

`

`@@ -1129,6 +1135,8 @@ def find(self, sub, start=0, end=_sys.maxsize):

`

1129

1135

`return self.data.find(sub, start, end)

`

1130

1136

`def format(self, *args, **kwds):

`

1131

1137

`return self.data.format(*args, **kwds)

`

``

1138

`+

def format_map(self, mapping):

`

``

1139

`+

return self.data.format_map(mapping)

`

1132

1140

`def index(self, sub, start=0, end=_sys.maxsize):

`

1133

1141

`return self.data.index(sub, start, end)

`

1134

1142

`def isalpha(self): return self.data.isalpha()

`

`@@ -1138,6 +1146,7 @@ def isdigit(self): return self.data.isdigit()

`

1138

1146

`def isidentifier(self): return self.data.isidentifier()

`

1139

1147

`def islower(self): return self.data.islower()

`

1140

1148

`def isnumeric(self): return self.data.isnumeric()

`

``

1149

`+

def isprintable(self): return self.data.isprintable()

`

1141

1150

`def isspace(self): return self.data.isspace()

`

1142

1151

`def istitle(self): return self.data.istitle()

`

1143

1152

`def isupper(self): return self.data.isupper()

`

`@@ -1146,6 +1155,7 @@ def ljust(self, width, *args):

`

1146

1155

`return self.class(self.data.ljust(width, *args))

`

1147

1156

`def lower(self): return self.class(self.data.lower())

`

1148

1157

`def lstrip(self, chars=None): return self.class(self.data.lstrip(chars))

`

``

1158

`+

maketrans = str.maketrans

`

1149

1159

`def partition(self, sep):

`

1150

1160

`return self.data.partition(sep)

`

1151

1161

`def replace(self, old, new, maxsplit=-1):

`