HEX
Server: LiteSpeed
System: Linux atali.colombiahosting.com.co 5.14.0-570.12.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 13 06:11:55 EDT 2025 x86_64
User: coopserp (1713)
PHP: 8.2.29
Disabled: dl,exec,passthru,proc_open,proc_close,shell_exec,memory_limit,system,popen,curl_multi_exec,show_source,symlink,link,leak,listen,diskfreespace,tmpfile,ignore_user_abord,highlight_file,source,show_source,fpaththru,virtual,posix_ctermid,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setid,posix_times,posix_ttyname,posix_uname,proc_get_status,proc_nice,proc_terminate
Upload Files
File: //lib64/perl5/vendor_perl/DBI/Const/GetInfoReturn.pm
# $Id: GetInfoReturn.pm 8696 2007-01-24 23:12:38Z Tim $
#
# Copyright (c) 2002  Tim Bunce  Ireland
#
# Constant data describing return values from the DBI getinfo function.
#
# You may distribute under the terms of either the GNU General Public
# License or the Artistic License, as specified in the Perl README file.

package DBI::Const::GetInfoReturn;

use strict;

use Exporter ();

use vars qw(@ISA @EXPORT @EXPORT_OK %GetInfoReturnTypes %GetInfoReturnValues);

@ISA = qw(Exporter);
@EXPORT = qw(%GetInfoReturnTypes %GetInfoReturnValues);

my
$VERSION = "2.008697";

=head1 NAME

DBI::Const::GetInfoReturn - Data and functions for describing GetInfo results

=head1 SYNOPSIS

The interface to this module is undocumented and liable to change.

=head1 DESCRIPTION

Data and functions for describing GetInfo results

=cut

use DBI::Const::GetInfoType;

use DBI::Const::GetInfo::ANSI ();
use DBI::Const::GetInfo::ODBC ();

%GetInfoReturnTypes =
(
  %DBI::Const::GetInfo::ANSI::ReturnTypes
, %DBI::Const::GetInfo::ODBC::ReturnTypes
);

%GetInfoReturnValues = ();
{
  my $A = \%DBI::Const::GetInfo::ANSI::ReturnValues;
  my $O = \%DBI::Const::GetInfo::ODBC::ReturnValues;
  while ( my ($k, $v) = each %$A ) {
    my %h = ( exists $O->{$k} ) ? ( %$v, %{$O->{$k}} ) : %$v;
    $GetInfoReturnValues{$k} = \%h;
  }
  while ( my ($k, $v) = each %$O ) {
    next if exists $A->{$k};
    my %h = %$v;
    $GetInfoReturnValues{$k} = \%h;
  }
}

# -----------------------------------------------------------------------------

sub Format {
  my $InfoType = shift;
  my $Value    = shift;

  return '' unless defined $Value;

  my $ReturnType = $GetInfoReturnTypes{$InfoType};

  return sprintf '0x%08X', $Value if $ReturnType eq 'SQLUINTEGER bitmask';
  return sprintf '0x%08X', $Value if $ReturnType eq 'SQLINTEGER bitmask';
# return '"' . $Value . '"'       if $ReturnType eq 'SQLCHAR';
  return $Value;
}


sub Explain {
  my $InfoType = shift;
  my $Value    = shift;

  return '' unless defined $Value;
  return '' unless exists $GetInfoReturnValues{$InfoType};

  $Value = int $Value;
  my $ReturnType = $GetInfoReturnTypes{$InfoType};
  my %h = reverse %{$GetInfoReturnValues{$InfoType}};

  if ( $ReturnType eq 'SQLUINTEGER bitmask'|| $ReturnType eq 'SQLINTEGER bitmask') {
    my @a = ();
    for my $k ( sort { $a <=> $b } keys %h ) {
      push @a, $h{$k} if $Value & $k;
    }
    return wantarray ? @a : join(' ', @a );
  }
  else {
    return $h{$Value} ||'?';
  }
}

1;