HEX

Warning: set_time_limit() [function.set-time-limit]: Cannot set time limit - prohibited by configuration in /home/u547966/brikov.ru/www/wp-content/plugins/admin-menu-editor/menu-editor.php on line 745
Server: Apache
System: Linux 4.19.0-0.bpo.9-amd64 x86_64 at red40
User: u547966 (5490)
PHP: 5.3.29-mh2
Disabled: syslog, dl, popen, proc_open, proc_nice, proc_get_status, proc_close, proc_terminate, posix_mkfifo, chown, chgrp, accelerator_reset, opcache_reset, accelerator_get_status, opcache_get_status, pcntl_alarm, pcntl_fork, pcntl_waitpid, pcntl_wait, pcntl_wifexited, pcntl_wifstopped, pcntl_wifsignaled, pcntl_wifcontinued, pcntl_wexitstatus, pcntl_wtermsig, pcntl_wstopsig, pcntl_signal, pcntl_signal_dispatch, pcntl_get_last_error, pcntl_strerror, pcntl_sigprocmask, pcntl_sigwaitinfo, pcntl_sigtimedwait, pcntl_exec, pcntl_getpriority, pcntl_setpriority
Upload Files
File: //usr/share/perl5/Math/Calc/Units/Convert/Combo.pm
package Math::Calc::Units::Convert::Combo;
use base 'Math::Calc::Units::Convert::Base2Metric';
use strict;
use vars qw(%units %metric_units %prefixable_metric_units %total_unit_map);
use vars qw(%ranges %pref);

%units = (
);

%metric_units = (
);

%prefixable_metric_units = ( bps => [ 1, { bit => 1, sec => -1 } ] );

%ranges = ( default => [ 1, 999 ] );

%pref = ( default => 1 );

sub canonical_unit { return; }

sub unit_map {
    my ($self) = @_;
    if (keys %total_unit_map == 0) {
	%total_unit_map = (%{$self->SUPER::unit_map()},
			   %units,
			   %metric_units,
			   %prefixable_metric_units);
    }
    return \%total_unit_map;
}

# Singular("Mbps") is Mbps, not Mbp
sub singular {
    my ($self, $unit) = @_;
    return $self->SUPER::singular($unit) unless $unit =~ /bps$/;
    return $unit;
}

# demetric : string => mult x base
#
sub demetric {
    my ($self, $string) = @_;
    if (my $prefix = $self->get_prefix($string)) {
	my $tail = lc($self->singular(substr($string, length($prefix))));
	if ($metric_units{$tail}) {
	    return ($self->get_metric($prefix), $tail);
	}
    } elsif (my $abbrev = $self->get_abbrev_prefix($string)) {
	my $tail = lc($self->singular(substr($string, length($abbrev))));
	if ($prefixable_metric_units{$tail}) {
	    my $prefix = $self->get_abbrev($abbrev);
	    return ($self->get_metric($prefix), $tail);
	}
    }

    return (1, $string);
}

# to_canonical : unitName -> amount x unitName
#
sub to_canonical { return; }

sub lookup_compound {
    my ($self, $unitName) = @_;

    foreach (keys %units, keys %metric_units, keys %prefixable_metric_units) {
	if (my $mult = $self->simple_convert($unitName, $_)) {
	    my $u = $units{$_}
	            || $metric_units{$_}
	            || $prefixable_metric_units{$_};
	    return [ $mult * $u->[0], $u->[1] ];
	}
    }

    return;
}

sub get_ranges {
    return \%ranges;
}

sub get_prefs {
    return \%pref;
}

1;