id"ddlmZdZGddeZGddeejZGddeejZGd d eejZ Gd d eejZ Gd deejZ GddeejZ dS))types) INT4RANGE INT8RANGENUMRANGEcBeZdZdZGddejjZdS)RangeOperatorsaI This mixin provides functionality for the Range Operators listed in Table 9-44 of the `postgres documentation`__ for Range Functions and Operators. It is used by all the range types provided in the ``postgres`` dialect and can likely be used for any range types you create yourself. __ http://www.postgresql.org/docs/devel/static/functions-range.html No extra support is provided for the Range Functions listed in Table 9-45 of the postgres documentation. For these, the normal :func:`~sqlalchemy.sql.expression.func` object should be used. c`eZdZdZfdZdZdZdZdZeZ dZ e Z dZ d Z d Zd ZxZS) !RangeOperators.comparator_factoryz-Define comparison operations for range types.c|-ttj||S|jdd|S)zT is_comparison)superrcomparator_factory__ne__exprop)selfother __class__s Z/opt/cloudlinux/venv/lib/python3.11/site-packages/sqlalchemy/dialects/postgresql/ranges.pyrz(RangeOperators.comparator_factory.__ne__ sT}^>EELL>ty||D|==eDDDc L|jdd|S)zBoolean expression. Returns true if the right hand operand, which can be an element or a range, is contained within the column. z@>Tr rr)rrkws rcontainsz*RangeOperators.comparator_factory.contains)s& :49<<D<99%@@ @rcL|jdd|S)zsBoolean expression. Returns true if the column is contained within the right hand operand. z<@Tr rrrs r contained_byz.RangeOperators.comparator_factory.contained_by0&:49<<D<99%@@ @rcL|jdd|S)zBoolean expression. Returns true if the column overlaps (has points in common with) the right hand operand. z&&Tr rrs roverlapsz*RangeOperators.comparator_factory.overlaps6rrcL|jdd|S)zsBoolean expression. Returns true if the column is strictly left of the right hand operand. z<>Tr rrs rstrictly_right_ofz3RangeOperators.comparator_factory.strictly_right_ofDrrcL|jdd|S)zBoolean expression. Returns true if the range in the column does not extend right of the range in the operand. z&Tr rrs rnot_extend_left_ofz4RangeOperators.comparator_factory.not_extend_left_ofRrrcL|jdd|S)z}Boolean expression. Returns true if the range in the column is adjacent to the range in the operand. z-|-Tr rrs r adjacent_toz-RangeOperators.comparator_factory.adjacent_toXs&;49<<T<::5AA ArcH|jd|S)zRange expression. Returns the union of the two ranges. Will raise an exception if the resulting range is not contigous. +rrs r__add__z)RangeOperators.comparator_factory.__add__^s" %49<<$$U++ +r)__name__ __module__ __qualname____doc__rrrr!r# __lshift__r% __rshift__r'r)r+r. __classcell__)rs@rrr s;; E E E E E A A A A A A  A A A  A A A &  A A A '  A A A  A A A  B B B  , , , , , , ,rrN)r/r0r1r2sqltypes Concatenable Comparatorrrrrr sX  F,F,F,F,F,X2=F,F,F,F,F,rrceZdZdZdZdS)rz(Represent the PostgreSQL INT4RANGE type.Nr/r0r1r2__visit_name__r9rrrrf22 NNNrrceZdZdZdZdS)rz(Represent the PostgreSQL INT8RANGE type.Nr;r9rrrrlr=rrceZdZdZdZdS)rz'Represent the PostgreSQL NUMRANGE type.Nr;r9rrrrrs11NNNrrceZdZdZdZdS) DATERANGEz(Represent the PostgreSQL DATERANGE type.Nr;r9rrrArAxr=rrAceZdZdZdZdS)TSRANGEz&Represent the PostgreSQL TSRANGE type.Nr;r9rrrCrC~s00NNNrrCceZdZdZdZdS) TSTZRANGEz(Represent the PostgreSQL TSTZRANGE type.Nr;r9rrrErEr=rrEN) rr6__all__objectr TypeEnginerrrrArCrEr9rrrJsw"!!!!! 1V,V,V,V,V,VV,V,V,r!!!!! 3!!! !!!!! 3!!!      ~x2   !!!!! 3!!! nh1 !!!!! 3!!!!!r