Only in Twisted-New: build
Only in Twisted-New/twisted: __init__.pyc
Only in Twisted-New/twisted: _version.pyc
Only in Twisted-New/twisted: copyright.pyc
Only in Twisted-New/twisted/python: __init__.pyc
diff -ur Twisted/twisted/python/_utilpy3.py Twisted-New/twisted/python/_utilpy3.py
|
old
|
new
|
|
| 8 | 8 | |
| 9 | 9 | from __future__ import division, absolute_import |
| 10 | 10 | |
| 11 | | import sys, errno, warnings |
| | 11 | import sys, errno, warnings, string |
| 12 | 12 | |
| 13 | 13 | class FancyEqMixin: |
| 14 | 14 | """ |
| … |
… |
|
| 170 | 170 | @type mname: C{str} |
| 171 | 171 | @param mname: The name to convert to a label. This must be a string |
| 172 | 172 | which could be used as a Python identifier. Strings which do not take |
| 173 | | this form will result in unpredictable behavior. |
| | 173 | this form will raise an AssertionError. |
| 174 | 174 | |
| 175 | 175 | @rtype: C{str} |
| 176 | 176 | """ |
| | 177 | #check that mname is a valid indentifier |
| | 178 | assert (mname[0] in string.letters) or (mname[0] == '_') #check that the first character is valid |
| | 179 | assert all(map(lambda char : (char in string.letters) or (char in string.digits) or (char == '_'), mname)) #check that each character after the first is valid |
| | 180 | |
| 177 | 181 | labelList = [] |
| 178 | 182 | word = '' |
| 179 | 183 | lastWasUpper = False |
| 180 | 184 | for letter in mname: |
| 181 | | if letter.isupper() == lastWasUpper: |
| 182 | | # Continuing a word. |
| | 185 | currentIsUpper = letter.isupper() or (lastWasUpper and (letter in (string.digits + string.punctuation))) #If an all caps is broken up by digits or punctuation it will remain one word |
| | 186 | if letter == "_": |
| | 187 | labelList.append(word) |
| | 188 | word = '' |
| | 189 | elif currentIsUpper == lastWasUpper: |
| | 190 | # Continuing a word. Runs if word is a series of lowercase or capital letters. |
| 183 | 191 | word += letter |
| 184 | 192 | else: |
| 185 | 193 | # breaking a word OR beginning a word |
| … |
… |
|
| 189 | 197 | # keep going |
| 190 | 198 | word += letter |
| 191 | 199 | else: |
| 192 | | # acronym |
| 193 | | # we're processing the lowercase letter after the acronym-then-capital |
| 194 | | lastWord = word[:-1] |
| 195 | | firstLetter = word[-1] |
| 196 | | labelList.append(lastWord) |
| 197 | | word = firstLetter + letter |
| | 200 | #acronym |
| | 201 | labelList.append(word) |
| | 202 | word = letter.upper() |
| 198 | 203 | else: |
| 199 | 204 | # definitely breaking: lower to upper |
| 200 | 205 | labelList.append(word) |
| 201 | 206 | word = letter |
| 202 | | lastWasUpper = letter.isupper() |
| | 207 | lastWasUpper = currentIsUpper |
| 203 | 208 | if labelList: |
| 204 | 209 | labelList[0] = labelList[0].capitalize() |
| 205 | 210 | else: |
| 206 | 211 | return mname.capitalize() |
| 207 | 212 | labelList.append(word) |
| 208 | | return ' '.join(labelList) |
| | 213 | |
| | 214 | # removes excess spaces |
| | 215 | labelList = map(lambda a_string : a_string.strip(), labelList) |
| | 216 | labelList = filter(lambda char :char not in string.whitespace, labelList) |
| | 217 | final_name = ' '.join(labelList).strip() |
| | 218 | |
| | 219 | return final_name |
Only in Twisted-New/twisted/python: compat.pyc
Only in Twisted-New/twisted/python: dist.pyc
Only in Twisted-New/twisted/python: hashlib.pyc
Only in Twisted-New/twisted/python/test: test_util.pyc
diff -ur Twisted/twisted/python/test/test_utilpy3.py Twisted-New/twisted/python/test/test_utilpy3.py
|
old
|
new
|
|
| 398 | 398 | ('foo', 'Foo'), |
| 399 | 399 | ('fooBar', 'Foo Bar'), |
| 400 | 400 | ('fooBarBaz', 'Foo Bar Baz'), |
| | 401 | ('FOObar', 'FOO Bar'), |
| | 402 | ('fooBAR', 'Foo BAR'), |
| | 403 | ('F22BAR', 'F22BAR'), |
| | 404 | ('F22jam', 'F22 Jam'), |
| | 405 | ('FOO_BAR', 'FOO BAR'), |
| | 406 | ('spam_AND_eggs', 'Spam AND Eggs'), |
| | 407 | ('rmswaveRMSWAVErmswaveRMSWAVE', 'Rmswave RMSWAVE Rmswave RMSWAVE'), |
| | 408 | ('MyMilkshakesBR1NG_AL2_th3', 'My Milkshakes BR1NG AL2 Th3'), |
| 401 | 409 | ] |
| 402 | 410 | for inp, out in nameData: |
| 403 | 411 | got = util.nameToLabel(inp) |