bpo-29776: Use decorator syntax for properties. (#585) · python/cpython@bdf6b91 (original) (raw)
10 files changed
lines changed
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1674,13 +1674,13 @@ def __int__(self): | ||
1674 | 1674 | |
1675 | 1675 | __trunc__ = __int__ |
1676 | 1676 | |
1677 | +@property | |
1677 | 1678 | def real(self): |
1678 | 1679 | return self |
1679 | -real = property(real) | |
1680 | 1680 | |
1681 | +@property | |
1681 | 1682 | def imag(self): |
1682 | 1683 | return Decimal(0) |
1683 | -imag = property(imag) | |
1684 | 1684 | |
1685 | 1685 | def conjugate(self): |
1686 | 1686 | return self |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -271,20 +271,20 @@ def pre_order(self): | ||
271 | 271 | for child in self.children: |
272 | 272 | yield from child.pre_order() |
273 | 273 | |
274 | -def _prefix_getter(self): | |
274 | +@property | |
275 | +def prefix(self): | |
275 | 276 | """ |
276 | 277 | The whitespace and comments preceding this node in the input. |
277 | 278 | """ |
278 | 279 | if not self.children: |
279 | 280 | return "" |
280 | 281 | return self.children[0].prefix |
281 | 282 | |
282 | -def _prefix_setter(self, prefix): | |
283 | +@prefix.setter | |
284 | +def prefix(self, prefix): | |
283 | 285 | if self.children: |
284 | 286 | self.children[0].prefix = prefix |
285 | 287 | |
286 | -prefix = property(_prefix_getter, _prefix_setter) | |
287 | - | |
288 | 288 | def set_child(self, i, child): |
289 | 289 | """ |
290 | 290 | Equivalent to 'node.children[i] = child'. This method also sets the |
@@ -380,18 +380,18 @@ def pre_order(self): | ||
380 | 380 | """Return a pre-order iterator for the tree.""" |
381 | 381 | yield self |
382 | 382 | |
383 | -def _prefix_getter(self): | |
383 | +@property | |
384 | +def prefix(self): | |
384 | 385 | """ |
385 | 386 | The whitespace and comments preceding this token in the input. |
386 | 387 | """ |
387 | 388 | return self._prefix |
388 | 389 | |
389 | -def _prefix_setter(self, prefix): | |
390 | +@prefix.setter | |
391 | +def prefix(self, prefix): | |
390 | 392 | self.changed() |
391 | 393 | self._prefix = prefix |
392 | 394 | |
393 | -prefix = property(_prefix_getter, _prefix_setter) | |
394 | - | |
395 | 395 | def convert(gr, raw_node): |
396 | 396 | """ |
397 | 397 | Convert raw node information to a Node or Leaf instance. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -465,8 +465,13 @@ def close(self): | ||
465 | 465 | self._listener = None |
466 | 466 | listener.close() |
467 | 467 | |
468 | -address = property(lambda self: self._listener._address) | |
469 | -last_accepted = property(lambda self: self._listener._last_accepted) | |
468 | +@property | |
469 | +def address(self): | |
470 | +return self._listener._address | |
471 | + | |
472 | +@property | |
473 | +def last_accepted(self): | |
474 | +return self._listener._last_accepted | |
470 | 475 | |
471 | 476 | def __enter__(self): |
472 | 477 | return self |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -98,11 +98,15 @@ class Value(object): | ||
98 | 98 | def __init__(self, typecode, value, lock=True): |
99 | 99 | self._typecode = typecode |
100 | 100 | self._value = value |
101 | -def _get(self): | |
101 | + | |
102 | +@property | |
103 | +def value(self): | |
102 | 104 | return self._value |
103 | -def _set(self, value): | |
105 | + | |
106 | +@value.setter | |
107 | +def value(self, value): | |
104 | 108 | self._value = value |
105 | - value = property(_get, _set) | |
109 | + | |
106 | 110 | def __repr__(self): |
107 | 111 | return '<%s(%r, %r)>'%(type(self).__name__,self._typecode,self._value) |
108 | 112 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -26,7 +26,9 @@ def accept(self): | ||
26 | 26 | def close(self): |
27 | 27 | self._backlog_queue = None |
28 | 28 | |
29 | -address = property(lambda self: self._backlog_queue) | |
29 | +@property | |
30 | +def address(self): | |
31 | +return self._backlog_queue | |
30 | 32 | |
31 | 33 | def __enter__(self): |
32 | 34 | return self |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -628,7 +628,9 @@ def _finalize_manager(process, address, authkey, state, _Client): | ||
628 | 628 | except KeyError: |
629 | 629 | pass |
630 | 630 | |
631 | -address = property(lambda self: self._address) | |
631 | +@property | |
632 | +def address(self): | |
633 | +return self._address | |
632 | 634 | |
633 | 635 | @classmethod |
634 | 636 | def register(cls, typeid, callable=None, proxytype=None, exposed=None, |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1868,8 +1868,13 @@ def __init__(self, input=None, output=None): | ||
1868 | 1868 | self._input = input |
1869 | 1869 | self._output = output |
1870 | 1870 | |
1871 | -input = property(lambda self: self._input or sys.stdin) | |
1872 | -output = property(lambda self: self._output or sys.stdout) | |
1871 | +@property | |
1872 | +def input(self): | |
1873 | +return self._input or sys.stdin | |
1874 | + | |
1875 | +@property | |
1876 | +def output(self): | |
1877 | +return self._output or sys.stdout | |
1873 | 1878 | |
1874 | 1879 | def __repr__(self): |
1875 | 1880 | if inspect.stack()[1][3] == '?': |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -761,17 +761,21 @@ def __init__(self, name=""): | ||
761 | 761 | |
762 | 762 | # In pax headers the "name" and "linkname" field are called |
763 | 763 | # "path" and "linkpath". |
764 | -def _getpath(self): | |
764 | +@property | |
765 | +def path(self): | |
765 | 766 | return self.name |
766 | -def _setpath(self, name): | |
767 | + | |
768 | +@path.setter | |
769 | +def path(self, name): | |
767 | 770 | self.name = name |
768 | -path = property(_getpath, _setpath) | |
769 | 771 | |
770 | -def _getlinkpath(self): | |
772 | +@property | |
773 | +def linkpath(self): | |
771 | 774 | return self.linkname |
772 | -def _setlinkpath(self, linkname): | |
775 | + | |
776 | +@linkpath.setter | |
777 | +def linkpath(self, linkname): | |
773 | 778 | self.linkname = linkname |
774 | -linkpath = property(_getlinkpath, _setlinkpath) | |
775 | 779 | |
776 | 780 | def __repr__(self): |
777 | 781 | return "<%s %r at %#x>" % (self.__class__.__name__,self.name,id(self)) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -160,7 +160,7 @@ def test_others(self): | ||
160 | 160 | cm('aifc', ignore=('openfp', '_aifc_params')) # set with = in module |
161 | 161 | cm('sre_parse', ignore=('dump', 'groups', 'pos')) # from sre_constants import *; property |
162 | 162 | cm('pdb') |
163 | -cm('pydoc') | |
163 | +cm('pydoc', ignore=('input', 'output',)) # properties | |
164 | 164 | |
165 | 165 | # Tests for modules inside packages |
166 | 166 | cm('email.parser') |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1577,20 +1577,17 @@ def adjust_label(): | ||
1577 | 1577 | self.label['text'] = newval |
1578 | 1578 | self.after_idle(adjust_label) |
1579 | 1579 | |
1580 | - | |
1581 | -def _get_value(self): | |
1580 | + @property | |
1581 | +def value(self): | |
1582 | 1582 | """Return current scale value.""" |
1583 | 1583 | return self._variable.get() |
1584 | 1584 | |
1585 | - | |
1586 | -def _set_value(self, val): | |
1585 | + @value.setter | |
1586 | +def value(self, val): | |
1587 | 1587 | """Set new scale value.""" |
1588 | 1588 | self._variable.set(val) |
1589 | 1589 | |
1590 | 1590 | |
1591 | -value = property(_get_value, _set_value) | |
1592 | - | |
1593 | - | |
1594 | 1591 | class OptionMenu(Menubutton): |
1595 | 1592 | """Themed OptionMenu, based after tkinter's OptionMenu, which allows |
1596 | 1593 | the user to select a value from a menu.""" |