Skip to content

Instantly share code, notes, and snippets.

@kmerenkov
Created March 26, 2012 20:02
Show Gist options
  • Save kmerenkov/2209258 to your computer and use it in GitHub Desktop.
Save kmerenkov/2209258 to your computer and use it in GitHub Desktop.
Magic values template
class MagicValue(object):
def __eq__(self, obj):
return type(self) is type(obj)
def __nonzero__(self):
return False
def __hash__(self):
return id(self)
def __getnewargs__(self):
return ()
def __getstate__(self):
return False
class _Unchanged(MagicValue):
def __repr__(self):
return 'Unchanged'
def __contains__(self, _item):
return False
class _Deleted(MagicValue):
def __repr__(self):
return 'Deleted'
Unchanged = _Unchanged()
Deleted = _Deleted()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment