a
    xd                     @   sX   d dl Z d dlmZ d dlmZ d dlmZ d dlmZ ddl	m
Z
 G dd	 d	eZdS )
    N)transaction)BaseDatabaseFeatures)OperationalError)cached_property   )Databasec                   @   s   e Zd ZdZdZdZdZdZdZdZ	dZ
dZdZdZdZdZdZdZdZejdkZdZdZdZdZdZdZdZdZejdkZdZejdkZ e Z!ejd	kZ"ejdkZ#ejd
kZ$ejdkZ%ejdkZ&dZ'dZ(e)dd Z*e+e,-dZ.dS )DatabaseFeaturesTFi  Z	AutoField)      r   r	   )r	      r   )r	      r   )r	      r   )r	      r   )r	      r   )r	   r   r   c              	   C   s   | j  n}z<t| j j |d W d    n1 s<0    Y  W n  tyh   Y W d    dS 0 W d    n1 s~0    Y  dS )NzSELECT JSON('{"a": "b"}')FT)
connectioncursorr   Zatomicaliasexecuter   )selfr    r   [/var/www/html/Ranjet/env/lib/python3.9/site-packages/django/db/backends/sqlite3/features.pysupports_json_field7   s    ,2z$DatabaseFeatures.supports_json_fieldr   N)/__name__
__module____qualname__Zcan_use_chunked_readsZ#test_db_allows_multiple_connectionsZsupports_unspecified_pkZsupports_timezonesZmax_query_paramsZ(supports_mixed_date_datetime_comparisonsZcan_introspect_autofieldZcan_introspect_decimal_fieldZcan_introspect_duration_fieldZ%can_introspect_positive_integer_fieldZ"can_introspect_small_integer_fieldZ introspected_big_auto_field_typeZ"introspected_small_auto_field_typeZsupports_transactionsZatomic_transactionsZcan_rollback_ddlr   Zsqlite_version_infoZ!supports_atomic_references_renameZcan_create_inline_fkZsupports_paramstyle_pyformatZcan_clone_databasesZsupports_temporal_subtractionZignores_table_name_caseZsupports_cast_with_precisionZtime_cast_precisionZcan_release_savepointsZcan_alter_table_rename_columnZ supports_parentheses_in_compoundZ!supports_pragma_foreign_key_checkZcan_defer_constraint_checksZ%supports_functions_in_partial_indexesZsupports_over_clauseZ#supports_frame_range_fixed_distanceZ supports_aggregate_filter_clauseZ supports_order_by_nulls_modifierZorder_by_nulls_firstZsupports_json_field_containsr   r   propertyoperator
attrgetterZcan_introspect_json_fieldr   r   r   r   r      sN   








	r   )r   Z	django.dbr   Z django.db.backends.base.featuresr   Zdjango.db.utilsr   Zdjango.utils.functionalr   baser   r   r   r   r   r   <module>   s   