diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2011-01-02 14:23:42 -0500 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2011-01-02 14:23:42 -0500 |
commit | 350aed3fdb9f1e73e69655e53f44ca6a91c196da (patch) | |
tree | 3d2a128667b5f6ca6d0b4e1f4865fc98aac6b60b /lib/sqlalchemy/ext/hybrid.py | |
parent | 71f92436bdc86f30e2c21d8f5244733601e8c39e (diff) | |
download | sqlalchemy-350aed3fdb9f1e73e69655e53f44ca6a91c196da.tar.gz |
- whitespace removal bonanza
Diffstat (limited to 'lib/sqlalchemy/ext/hybrid.py')
-rw-r--r-- | lib/sqlalchemy/ext/hybrid.py | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/lib/sqlalchemy/ext/hybrid.py b/lib/sqlalchemy/ext/hybrid.py index 153eccce2..f3989a84d 100644 --- a/lib/sqlalchemy/ext/hybrid.py +++ b/lib/sqlalchemy/ext/hybrid.py @@ -13,7 +13,7 @@ Consider a table `interval` as below:: from sqlalchemy import MetaData, Table, Column, Integer from sqlalchemy.orm import mapper, create_session - + engine = create_engine('sqlite://') metadata = MetaData() @@ -22,22 +22,22 @@ Consider a table `interval` as below:: Column('start', Integer, nullable=False), Column('end', Integer, nullable=False)) metadata.create_all(engine) - + We can define higher level functions on mapped classes that produce SQL expressions at the class level, and Python expression evaluation at the instance level. Below, each function decorated with :func:`hybrid.method` or :func:`hybrid.property` may receive ``self`` as an instance of the class, or as the class itself:: - + # A base class for intervals from sqlalchemy.orm import hybrid - + class Interval(object): def __init__(self, start, end): self.start = start self.end = end - + @hybrid.property def length(self): return self.end - self.start @@ -45,13 +45,13 @@ or as the class itself:: @hybrid.method def contains(self,point): return (self.start <= point) & (point < self.end) - + @hybrid.method def intersects(self, other): return self.contains(other.start) | self.contains(other.end) - + """ from sqlalchemy import util from sqlalchemy.orm import attributes, interfaces @@ -60,7 +60,7 @@ class method(object): def __init__(self, func, expr=None): self.func = func self.expr = expr or func - + def __get__(self, instance, owner): if instance is None: return new.instancemethod(self.expr, owner, owner.__class__) @@ -84,13 +84,13 @@ class property_(object): return self.expr(owner) else: return self.fget(instance) - + def __set__(self, instance, value): self.fset(instance, value) - + def __delete__(self, instance): self.fdel(instance) - + def setter(self, fset): self.fset = fset return self @@ -98,11 +98,11 @@ class property_(object): def deleter(self, fdel): self.fdel = fdel return self - + def expression(self, expr): self.expr = expr return self - + def comparator(self, comparator): proxy_attr = attributes.\ create_proxied_attribute(self) @@ -115,15 +115,15 @@ class property_(object): class Comparator(interfaces.PropComparator): def __init__(self, expression): self.expression = expression - + def __clause_element__(self): expr = self.expression while hasattr(expr, '__clause_element__'): expr = expr.__clause_element__() return expr - + def adapted(self, adapter): # interesting.... return self - + |