You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: database_statements.rb
    path of file: ./repos/torque-postgresql/lib/torque/postgresql/adapter
    
    the code of the file until where you have to start completion: # frozen_string_literal: true

module Torque
  module PostgreSQL
    module Adapter
      module DatabaseStatements

        EXTENDED_DATABASE_TYPES = %i(enum enum_set interval)

        # Switch between dump mode or not
        def dump_mode!
          @_dump_mode = !!!@_dump_mode
        end

        # List of schemas blocked by the application in the current connection
        def schemas_bl
    
        def user_defined_schemas_sql
          conditions = []
          conditions << <<-SQL.squish if schemas_blacklist.any?
            nspname NOT LIKE ALL (ARRAY['#{schemas_blacklist.join("', '")}'])
          SQL

          conditions << <<-SQL.squish if schemas_whitelist.any?
            nspname LIKE ANY (ARRAY['#{schemas_whitelist.join("', '")}'])
          SQL

          <<-SQL.squish
            SELECT nspname
            FROM pg_catalog.pg_namespace
            WHERE 1=1 AND #{conditions.join(' AND ')}
            ORDER BY oid
          SQL
        end