
     h                     N    d dl Z d dlmZ d dlmZ d dlmZ  G d de          ZdS )    N)InterfaceError)BaseDatabaseFeatures)cached_propertyc                       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dZdZdZdZdZdZeZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$h dZ%dZ&dZ'dZ(dZ)dZ*dZ+dZ,dddZ-dZ.d	d
hiZ/e0 fd            Z1e0d             Z2e0d             Z3e0d             Z4 e5 e6j7        d                    Z8 e5 e6j7        d                    Z9 e5 e6j7        d                    Z: e5 e6j7        d                    Z; xZ<S )DatabaseFeatures)   Tz
        CREATE FUNCTION test_procedure () RETURNS void AS $$
        DECLARE
            V_I INTEGER;
        BEGIN
            V_I := 1;
        END;
    $$ LANGUAGE plpgsql;z
        CREATE FUNCTION test_procedure (P_I INTEGER) RETURNS void AS $$
        DECLARE
            V_I INTEGER;
        BEGIN
            V_I := P_I;
        END;
    $$ LANGUAGE plpgsql;>   XMLJSONTEXTYAMLzsv-x-icu)non_default
swedish_ciz(STATEMENT_TIMESTAMP() AT TIME ZONE 'UTC'zopclasses are PostgreSQL only.zQindexes.tests.SchemaIndexesNotPostgreSQLTests.test_create_index_ignores_opclassesc                 :    i t                      j        ddddS )NBigIntegerFieldIntegerFieldSmallIntegerField)PositiveBigIntegerFieldPositiveIntegerFieldPositiveSmallIntegerField)superintrospected_field_types)self	__class__s    b/var/www/html/Sam_Eipo/venv/lib/python3.11/site-packages/django/db/backends/postgresql/features.pyr   z)DatabaseFeatures.introspected_field_typesM   s4    
gg.
'8$2)<	
 
 
 	
    c                 "    | j         j        dk    S )Ni 
connection
pg_versionr   s    r   is_postgresql_12z!DatabaseFeatures.is_postgresql_12V       )V33r   c                 "    | j         j        dk    S )Ni r   r    s    r   is_postgresql_13z!DatabaseFeatures.is_postgresql_13Z   r"   r   c                 "    | j         j        dk    S )Ni" r   r    s    r   is_postgresql_14z!DatabaseFeatures.is_postgresql_14^   r"   r   r&   r!   )=__name__
__module____qualname__minimum_database_versionallows_group_by_selected_pkscan_return_columns_from_insert can_return_rows_from_bulk_inserthas_real_datatypehas_native_uuid_fieldhas_native_duration_fieldhas_native_json_fieldcan_defer_constraint_checkshas_select_for_updatehas_select_for_update_nowaithas_select_for_update_of!has_select_for_update_skip_lockedhas_select_for_no_key_updatecan_release_savepointssupports_tablespacessupports_transactions!can_introspect_materialized_viewscan_distinct_on_fieldscan_rollback_ddlsupports_combined_altersnulls_order_largestr   closed_cursor_error_classgreatest_least_ignores_nullscan_clone_databasessupports_temporal_subtraction%supports_slicing_ordering_in_compound(create_test_procedure_without_params_sql(create_test_procedure_with_int_param_sqlrequires_casted_case_in_updatessupports_over_clause4only_supports_unbounded_with_preceding_and_following supports_aggregate_filter_clausesupported_explain_formats&supports_deferrable_unique_constraintshas_json_operators-json_key_contains_list_matching_requires_listsupports_update_conflicts%supports_update_conflicts_with_targetsupports_covering_indexescan_rename_indextest_collationstest_now_utc_templatedjango_test_skipsr   r   r!   r$   r&   propertyoperator
attrgetterhas_bit_xorsupports_covering_gist_indexes supports_covering_spgist_indexes%supports_non_deterministic_collations__classcell__)r   s   @r   r   r      sB       $#' %)"'+$  $ "& #' #(,%#' ! (,%!# .#' $(!,0)0,0, '+#;?8'+$ ? ? ?-1*481 $,0) $!  O G 	)2+
 
 
 
 
 _
 4 4 _4 4 4 _4 4 4 _4 (.8./ABBCCK%-X.Ah.ABT.U.U%V%V"'/x0C0CDV0W0W'X'X$,4H.//- -)))))r   r   )rW   	django.dbr    django.db.backends.base.featuresr   django.utils.functionalr   r    r   r   <module>rb      s     $ $ $ $ $ $ A A A A A A 3 3 3 3 3 3_ _ _ _ _+ _ _ _ _ _r   