PHP 8.1.33
Preview: endian.ph Size: 4.36 KB
//lib64/perl5/endian.ph

require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&_ENDIAN_H)) {
    eval 'sub _ENDIAN_H () {1;}' unless defined(&_ENDIAN_H);
    require 'features.ph';
    eval 'sub __LITTLE_ENDIAN () {1234;}' unless defined(&__LITTLE_ENDIAN);
    eval 'sub __BIG_ENDIAN () {4321;}' unless defined(&__BIG_ENDIAN);
    eval 'sub __PDP_ENDIAN () {3412;}' unless defined(&__PDP_ENDIAN);
    require 'bits/endian.ph';
    unless(defined(&__FLOAT_WORD_ORDER)) {
	eval 'sub __FLOAT_WORD_ORDER () { &__BYTE_ORDER;}' unless defined(&__FLOAT_WORD_ORDER);
    }
    if(defined(&__USE_MISC)) {
	eval 'sub LITTLE_ENDIAN () { &__LITTLE_ENDIAN;}' unless defined(&LITTLE_ENDIAN);
	eval 'sub BIG_ENDIAN () { &__BIG_ENDIAN;}' unless defined(&BIG_ENDIAN);
	eval 'sub PDP_ENDIAN () { &__PDP_ENDIAN;}' unless defined(&PDP_ENDIAN);
	eval 'sub BYTE_ORDER () { &__BYTE_ORDER;}' unless defined(&BYTE_ORDER);
    }
    if((defined(&__BYTE_ORDER) ? &__BYTE_ORDER : undef) == (defined(&__LITTLE_ENDIAN) ? &__LITTLE_ENDIAN : undef)) {
	eval 'sub __LONG_LONG_PAIR {
	    my($HI, $LO) = @_;
    	    eval q($LO, $HI);
	}' unless defined(&__LONG_LONG_PAIR);
    }
 elsif((defined(&__BYTE_ORDER) ? &__BYTE_ORDER : undef) == (defined(&__BIG_ENDIAN) ? &__BIG_ENDIAN : undef)) {
	eval 'sub __LONG_LONG_PAIR {
	    my($HI, $LO) = @_;
    	    eval q($HI, $LO);
	}' unless defined(&__LONG_LONG_PAIR);
    }
    if(defined (&__USE_MISC)  && !defined (&__ASSEMBLER__)) {
	require 'bits/byteswap.ph';
	require 'bits/uintn-identity.ph';
	if((defined(&__BYTE_ORDER) ? &__BYTE_ORDER : undef) == (defined(&__LITTLE_ENDIAN) ? &__LITTLE_ENDIAN : undef)) {
	    eval 'sub htobe16 {
	        my($x) = @_;
    		eval q( &__bswap_16 ($x));
	    }' unless defined(&htobe16);
	    eval 'sub htole16 {
	        my($x) = @_;
    		eval q( &__uint16_identity ($x));
	    }' unless defined(&htole16);
	    eval 'sub be16toh {
	        my($x) = @_;
    		eval q( &__bswap_16 ($x));
	    }' unless defined(&be16toh);
	    eval 'sub le16toh {
	        my($x) = @_;
    		eval q( &__uint16_identity ($x));
	    }' unless defined(&le16toh);
	    eval 'sub htobe32 {
	        my($x) = @_;
    		eval q( &__bswap_32 ($x));
	    }' unless defined(&htobe32);
	    eval 'sub htole32 {
	        my($x) = @_;
    		eval q( &__uint32_identity ($x));
	    }' unless defined(&htole32);
	    eval 'sub be32toh {
	        my($x) = @_;
    		eval q( &__bswap_32 ($x));
	    }' unless defined(&be32toh);
	    eval 'sub le32toh {
	        my($x) = @_;
    		eval q( &__uint32_identity ($x));
	    }' unless defined(&le32toh);
	    eval 'sub htobe64 {
	        my($x) = @_;
    		eval q( &__bswap_64 ($x));
	    }' unless defined(&htobe64);
	    eval 'sub htole64 {
	        my($x) = @_;
    		eval q( &__uint64_identity ($x));
	    }' unless defined(&htole64);
	    eval 'sub be64toh {
	        my($x) = @_;
    		eval q( &__bswap_64 ($x));
	    }' unless defined(&be64toh);
	    eval 'sub le64toh {
	        my($x) = @_;
    		eval q( &__uint64_identity ($x));
	    }' unless defined(&le64toh);
	} else {
	    eval 'sub htobe16 {
	        my($x) = @_;
    		eval q( &__uint16_identity ($x));
	    }' unless defined(&htobe16);
	    eval 'sub htole16 {
	        my($x) = @_;
    		eval q( &__bswap_16 ($x));
	    }' unless defined(&htole16);
	    eval 'sub be16toh {
	        my($x) = @_;
    		eval q( &__uint16_identity ($x));
	    }' unless defined(&be16toh);
	    eval 'sub le16toh {
	        my($x) = @_;
    		eval q( &__bswap_16 ($x));
	    }' unless defined(&le16toh);
	    eval 'sub htobe32 {
	        my($x) = @_;
    		eval q( &__uint32_identity ($x));
	    }' unless defined(&htobe32);
	    eval 'sub htole32 {
	        my($x) = @_;
    		eval q( &__bswap_32 ($x));
	    }' unless defined(&htole32);
	    eval 'sub be32toh {
	        my($x) = @_;
    		eval q( &__uint32_identity ($x));
	    }' unless defined(&be32toh);
	    eval 'sub le32toh {
	        my($x) = @_;
    		eval q( &__bswap_32 ($x));
	    }' unless defined(&le32toh);
	    eval 'sub htobe64 {
	        my($x) = @_;
    		eval q( &__uint64_identity ($x));
	    }' unless defined(&htobe64);
	    eval 'sub htole64 {
	        my($x) = @_;
    		eval q( &__bswap_64 ($x));
	    }' unless defined(&htole64);
	    eval 'sub be64toh {
	        my($x) = @_;
    		eval q( &__uint64_identity ($x));
	    }' unless defined(&be64toh);
	    eval 'sub le64toh {
	        my($x) = @_;
    		eval q( &__bswap_64 ($x));
	    }' unless defined(&le64toh);
	}
    }
}
1;

Directory Contents

Dirs: 21 × Files: 35

Name Size Perms Modified Actions
asm DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
auto DIR
- drwxr-xr-x 2025-07-28 08:07:09
Edit Download
B DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
bits DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
CORE DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
Devel DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
File DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
gnu DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
Hash DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
I18N DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
IO DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
IPC DIR
- drwxr-xr-x 2025-07-28 08:07:09
Edit Download
linux DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
machine DIR
- drwxr-xr-x 2025-07-28 08:07:18
Edit Download
PerlIO DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
sys DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
Sys DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
Tie DIR
- drwxr-xr-x 2025-07-28 08:07:09
Edit Download
Time DIR
- drwxr-xr-x 2025-07-28 23:00:18
Edit Download
- drwxr-xr-x 2025-10-08 12:22:31
Edit Download
2.75 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
16.53 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
30.72 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
3.12 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
250.87 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
409 B lrw-r--r-- 2025-07-28 08:07:09
Edit Download
55.33 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
24.63 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
4.36 KB lrw-r--r-- 2025-07-28 08:07:18
Edit Download
6.70 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
3.95 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
13.37 KB lrw-r--r-- 2025-07-28 08:07:18
Edit Download
1.51 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
1.42 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
5.87 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
9.86 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
2.44 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
4.11 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
2.33 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
15.52 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
997 B lrw-r--r-- 2025-07-28 08:07:09
Edit Download
10.70 KB lrw-r--r-- 2024-03-11 08:32:06
Edit Download
19.72 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
71.98 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
22.16 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
3.46 KB lrw-r--r-- 2025-07-28 08:07:09
Edit Download
3.30 KB lrw-r--r-- 2025-07-28 08:07:18
Edit Download
2.80 KB lrw-r--r-- 2025-07-28 08:07:18
Edit Download
840 B lrw-r--r-- 2025-07-28 08:07:18
Edit Download
12.08 KB lrw-r--r-- 2025-07-28 08:07:18
Edit Download
86 B lrw-r--r-- 2025-07-28 08:07:18
Edit Download
452 B lrw-r--r-- 2025-07-28 08:07:18
Edit Download
85 B lrw-r--r-- 2025-07-28 08:07:18
Edit Download
83 B lrw-r--r-- 2025-07-28 08:07:18
Edit Download
28.57 KB lrw-r--r-- 2025-07-28 08:07:18
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).