From ab9cbc84df9eab892e8109472c807a3784f0fa0a Mon Sep 17 00:00:00 2001 From: Hynek Schlawack Date: Wed, 17 Aug 2016 14:26:32 +0200 Subject: [PATCH] slots-ify internal classes Saves memory without downsides. Ref #60 --- src/attr/_make.py | 2 +- src/attr/validators.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/attr/_make.py b/src/attr/_make.py index 00880c6866d26c..c8430f17c18884 100644 --- a/src/attr/_make.py +++ b/src/attr/_make.py @@ -591,7 +591,7 @@ def __init__(self, default, validator, repr, cmp, hash, init, convert): _CountingAttr = _add_cmp(_add_repr(_CountingAttr)) -@attributes +@attributes(slots=True) class Factory(object): """ Stores a factory callable. diff --git a/src/attr/validators.py b/src/attr/validators.py index 13a936648bf12b..cacb4d1121a984 100644 --- a/src/attr/validators.py +++ b/src/attr/validators.py @@ -7,7 +7,7 @@ from ._make import attr, attributes -@attributes(repr=False) +@attributes(repr=False, slots=True) class _InstanceOfValidator(object): type = attr() @@ -47,7 +47,7 @@ def instance_of(type): return _InstanceOfValidator(type) -@attributes(repr=False) +@attributes(repr=False, slots=True) class _ProvidesValidator(object): interface = attr() @@ -87,7 +87,7 @@ def provides(interface): return _ProvidesValidator(interface) -@attributes(repr=False) +@attributes(repr=False, slots=True) class _OptionalValidator(object): validator = attr()