summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/dialects/postgresql/hstore.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sqlalchemy/dialects/postgresql/hstore.py')
-rw-r--r--lib/sqlalchemy/dialects/postgresql/hstore.py19
1 files changed, 13 insertions, 6 deletions
diff --git a/lib/sqlalchemy/dialects/postgresql/hstore.py b/lib/sqlalchemy/dialects/postgresql/hstore.py
index 67923fe39..d3ff30efb 100644
--- a/lib/sqlalchemy/dialects/postgresql/hstore.py
+++ b/lib/sqlalchemy/dialects/postgresql/hstore.py
@@ -16,29 +16,36 @@ from ... import util
__all__ = ('HSTORE', 'hstore')
+idx_precedence = operators._PRECEDENCE[operators.json_getitem_op]
GETITEM = operators.custom_op(
- "->", precedence=15, natural_self_precedent=True,
+ "->", precedence=idx_precedence, natural_self_precedent=True,
+ eager_grouping=True
)
HAS_KEY = operators.custom_op(
- "?", precedence=15, natural_self_precedent=True
+ "?", precedence=idx_precedence, natural_self_precedent=True,
+ eager_grouping=True
)
HAS_ALL = operators.custom_op(
- "?&", precedence=15, natural_self_precedent=True
+ "?&", precedence=idx_precedence, natural_self_precedent=True,
+ eager_grouping=True
)
HAS_ANY = operators.custom_op(
- "?|", precedence=15, natural_self_precedent=True
+ "?|", precedence=idx_precedence, natural_self_precedent=True,
+ eager_grouping=True
)
CONTAINS = operators.custom_op(
- "@>", precedence=15, natural_self_precedent=True
+ "@>", precedence=idx_precedence, natural_self_precedent=True,
+ eager_grouping=True
)
CONTAINED_BY = operators.custom_op(
- "<@", precedence=15, natural_self_precedent=True
+ "<@", precedence=idx_precedence, natural_self_precedent=True,
+ eager_grouping=True
)