diff options
| author | Michael Merickel <michael@merickel.org> | 2016-04-27 23:59:31 -0500 |
|---|---|---|
| committer | Michael Merickel <michael@merickel.org> | 2016-04-27 23:59:31 -0500 |
| commit | 78f6ef077c7f67440f5ccfad9b20771fe68ecee1 (patch) | |
| tree | cf083547036fef23997c03ea6253995357bb3fb8 | |
| parent | f7d515de86ad1ceab1b330cf1d95257b712b2659 (diff) | |
| download | pyramid-78f6ef077c7f67440f5ccfad9b20771fe68ecee1.tar.gz pyramid-78f6ef077c7f67440f5ccfad9b20771fe68ecee1.tar.bz2 pyramid-78f6ef077c7f67440f5ccfad9b20771fe68ecee1.zip | |
avoid executing the discriminator functions multiple times
| -rw-r--r-- | pyramid/registry.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/pyramid/registry.py b/pyramid/registry.py index 1073134ff..df9a10822 100644 --- a/pyramid/registry.py +++ b/pyramid/registry.py @@ -255,9 +255,13 @@ class Deferred(object): def __init__(self, func): self.func = func - def resolve(self): + @reify + def value(self): return self.func() + def resolve(self): + return self.value + def undefer(v): """ Function which accepts an object and returns it unless it is a :class:`pyramid.registry.Deferred` instance. If it is an instance of |
