David Eppstein <eppstein at ics.uci.edu> writes: > In article <un011l2qz.fsf at boost-consulting.com>, > David Abrahams <dave at boost-consulting.com> wrote: > >> > class Foo: >> > >> > decorate static: >> > >> > def static1(blah...): >> > pass >> > >> > decorate locksFile: >> > >> > def static2andLocks(blah...): # both decorators appy >> > pass >> >> Wow, Martin Z's idea (using your keyword) really went "thunk" for me. >> What decorate does would be very much like what "class" does in some >> ways. > > class: (and other something: constructs) start a block that can contain > any code. Does this decorate keyword allow e.g. assignments as well as > defs and other decorates? Or loops? Why not? class: starts a block that establishes a new dict as the execution namespace and then passes the result off to the metaclass. decorate might do the same. > If so what should it mean? Whatever the user wants, I guess? > Is it like that locals() gets replaced by a special > dictionary-like-object that calls the decorator whenever any of its > contents gets set? I was thinking it calls the decorator afterwards, just like class calls the metaclass afterwards. -- Dave Abrahams Boost Consulting http://www.boost-consulting.com
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4