%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/emacs-lisp/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/emacs-lisp/bindat.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(defalias 'bindat--unpack-u8 #[nil "	H	T\207" [bindat-raw bindat-idx] 2])
(defalias 'bindat--unpack-u16 #[nil "\300\301\302 \303\"\302 \"\207" [logior ash bindat--unpack-u8 8] 4])
(defalias 'bindat--unpack-u24 #[nil "\300\301\302 \303\"\304 \"\207" [logior ash bindat--unpack-u16 8 bindat--unpack-u8] 4])
(defalias 'bindat--unpack-u32 #[nil "\300\301\302 \303\"\302 \"\207" [logior ash bindat--unpack-u16 16] 4])
(defalias 'bindat--unpack-u16r #[nil "\300\301 \302\301 \303\"\"\207" [logior bindat--unpack-u8 ash 8] 5])
(defalias 'bindat--unpack-u24r #[nil "\300\301 \302\303 \304\"\"\207" [logior bindat--unpack-u16r ash bindat--unpack-u8 16] 5])
(defalias 'bindat--unpack-u32r #[nil "\300\301 \302\301 \303\"\"\207" [logior bindat--unpack-u16r ash 16] 5])
(defalias 'bindat--unpack-item #[(type len &optional vectype) "\306=\203\n\307\310\311\267\202#\312 \207\313 \207\314 \207\315 \207\316 \207\317 \207\320 \207\321\322	_S\321\211\f\323Y\203k\312 \211\323U\203G\f\322Z\211\2021\324\211\323V\2030\325\n\"\323U\204\\\f
B\fS\326\327\"\211\202J\2020
,\207\330 !\211	\\#\"!	\\!\";\203\212\"\202\217\331\332\"\")\207\323\321\"\211#	W\203\263 !#\\H\323U\204\263#T\211#\202\230\330 !\211#\\#\"!	\\!\";\203\320\"\202\325\331\332\"\"*\207\333	\323\"\323\334$#%&:\203\370&A@$\335&8&\202&\206\376\336\321&#	W\203%#\337$&#I\210#T\211#\202%+\207\321\207" [type len m j bnum bits ip vec 4 #s(hash-table size 16 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (u8 16 byte 16 u16 19 word 19 short 19 u24 22 u32 25 dword 25 long 25 u16r 28 u24r 31 u32r 34 bits 37 str 110 strz 145 vec 215)) bindat--unpack-u8 bindat--unpack-u16 bindat--unpack-u24 bindat--unpack-u32 bindat--unpack-u16r bindat--unpack-u24r bindat--unpack-u32r nil 8 0 128 logand ash -1 substring apply unibyte-string make-vector 1 2 u8 bindat--unpack-item bindat-raw bindat-idx s i vlen v vectype] 7])
(defalias 'bindat--unpack-group #[(spec) "\306\211\n\203\205\n@\211@A@\3078
\310=\205 \3118\311\306\nA\f:\203=\f@\312=\203=\312\fA@!
\203S
:\203S
@\312=\203S\312
A@!\203n:\203n@\312=\203n\312A@!\f\313>\203~\307
\f\306:\203\222
\312=\204\222\314\315	#\204\232\316
\317\267\202\\\f\203\255\312!\202g\312!\210\202g\\\202g\246\320U\204gT\211\202\301\202g\321\312!!\202g\320\211W\203\321\233!BT\211\202\350\237*\202g\233\306\211\203X@A@\211\232\204J\322=\204J:\203\312!\203\321A!\306\211\204 ,\202g\323
#\211\203\200\f\203z\fB	B\202\200\324	\".\202	*\207" [last struct spec item field type nil 2 vec 3 eval (eval fill align struct union) apply bindat-get-field 1 #s(hash-table size 6 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (eval 160 fill 181 align 191 struct 213 repeat 224 union 267)) 0 bindat--unpack-group t bindat--unpack-item append len vectype tail data bindat-idx count index cc case cases tag] 5])
#@190 Return structured data according to SPEC for binary data in BINDAT-RAW.
BINDAT-RAW is a unibyte string or vector.
Optional third arg BINDAT-IDX specifies the starting offset in BINDAT-RAW.
(defalias 'bindat-unpack #[(spec bindat-raw &optional bindat-idx) "\303!\203\n\304\305!\210	\204\306\307\n!\207" [bindat-raw bindat-idx spec multibyte-string-p error "String is multibyte" 0 bindat--unpack-group] 2 (#$ . 3482)])
#@352 In structured data STRUCT, return value of field named FIELD.
If multiple field names are specified, use the field names to
lookup nested sub-structures in STRUCT, corresponding to the
C-language syntax STRUCT.FIELD1.FIELD2.FIELD3...
An integer value in the field list is taken as an array index,
e.g. corresponding to STRUCT.FIELD1[INDEX2].FIELD3...
(defalias 'bindat-get-field #[(struct &rest field) "\203)	\203)	@\250\203	@8\202\"	@\236\211:\205!\nA)	A\202\207" [struct field val] 3 (#$ . 3911)])
(defvar bindat--fixed-length-alist '((u8 . 1) (byte . 1) (u16 . 2) (u16r . 2) (word . 2) (short . 2) (u24 . 3) (u24r . 3) (u32 . 4) (u32r . 4) (dword . 4) (long . 4) (ip . 4)))
(defalias 'bindat--length-group #[(struct spec) "\306	\205\246	@\211@\nA@\307\n8\f\310=\205\311\n8\311	A:\2037@\312=\2037\312A@!\f\203M\f:\203M\f@\312=\203M\312\fA@!
\203c
:\203c
@\312=\203c\312
A@!\313>\203r\307\f\306
:\203\204\f\312=\204\204\314\315
#
\204\212\316\f\310=\203\266\316:\203\250
A@_\3078\202\262\206\256\317\306)\202\212\f\320\267\202\203\203\315\312
!BB\202\241\312
!\210\202\241
\\\202\241
\246\321U\204\241T\211\202\337\202\241\322\203\377\315\"\202\312
!\"\210\202\241\321
\211W\203.\322\315\"8\n\233\"\210T\211\202*\202\241
\n\233\306\211\203@A@\211\232\204p\323=\204p:\203A\312!\203A\322A\"\210\306\211\204F,\202\241\f\236\211\203\221
\fA_\203\233\315\"
\\.\202)\207" [last spec item field type len nil 2 vec 3 eval (eval fill align struct union) apply bindat-get-field 1 u8 #s(hash-table size 6 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (eval 188 fill 212 align 221 struct 242 repeat 265 union 306)) 0 bindat--length-group t vectype tail struct vlen bindat-idx count index cc case cases tag bindat--fixed-length-alist] 6])
#@66 Calculate bindat-raw length for STRUCT according to bindat SPEC.
(defalias 'bindat-length #[(spec struct) "\303\304	\n\"\210)\207" [bindat-idx struct spec 0 bindat--length-group] 3 (#$ . 5858)])
(defalias 'bindat--pack-u8 #[(v) "	\303\n\304\"I\210	T\211\207" [bindat-raw bindat-idx v logand 255] 5])
(defalias 'bindat--pack-u16 #[(v) "	\303\304\n\305\"\306\"I\210	T\303\n\306\"I\210	\307\\\211\207" [bindat-raw bindat-idx v logand ash -8 255 2] 6])
(defalias 'bindat--pack-u24 #[(v) "\301\302\303\"!\210\304!\207" [v bindat--pack-u8 ash -16 bindat--pack-u16] 4])
(defalias 'bindat--pack-u32 #[(v) "\301\302\303\"!\210\301!\207" [v bindat--pack-u16 ash -16] 4])
(defalias 'bindat--pack-u16r #[(v) "	T\303\304\n\305\"\306\"I\210	\303\n\306\"I\210	\307\\\211\207" [bindat-raw bindat-idx v logand ash -8 255 2] 6])
(defalias 'bindat--pack-u24r #[(v) "\301!\210\302\303\304\"!\207" [v bindat--pack-u16r bindat--pack-u8 ash -16] 4])
(defalias 'bindat--pack-u32r #[(v) "\301!\210\301\302\303\"!\207" [v bindat--pack-u16r ash -16] 4])
(defalias 'bindat--pack-item #[(v type len &optional vectype) "\306=\203\n\307\310\n\204	\\\211\207\311\267\202\312\n!\207\313\n!\207\314\n!\207\315\n!\207\316\n!\207\317\n!\207\320\n!\207\321	_S\322\211\323Y\205\323\n\204V\321Z\202x\324\211\323V\203x\n>\203j\325\f
\"S\326
\327\"\211\202Y\312\f!\210\202@+\207\nG\323\211	V\203\221	W\203\256\\\nHI\210T\211\202\223	\\\211*\207\nG\323\330 !:\203\324!A@ \331!8!\202\336!\206\332\332\322!	V\203\350	W\205\333\nH !$\210T\211\202\352+\207	\\\211\207" [type len v bindat-idx m j ip vec 4 #s(hash-table size 16 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (u8 26 byte 26 u16 30 word 30 short 30 u24 34 u32 38 dword 38 long 38 u16r 42 u24r 46 u32r 50 bits 54 str 129 strz 129 vec 181)) bindat--pack-u8 bindat--pack-u16 bindat--pack-u24 bindat--pack-u32 bindat--pack-u16r bindat--pack-u24r bindat--pack-u32r 8 nil 0 128 logior ash -1 1 2 u8 bindat--pack-item bnum i l bindat-raw vlen vectype] 6])
(defalias 'bindat--pack-group #[(struct spec) "\306	\205j	@\211@\nA@\307\n8\f\310=\205\311\n8\311	A:\2037@\312=\2037\312A@!\f\203M\f:\203M\f@\312=\203M\312\fA@!
\203c
:\203c
@\312=\203c\312
A@!\313>\203r\307\f\306
:\203\204\f\312=\204\204\314\315
#
\204\212\316\f\317\267\202W\203\241\312
!BB\202e\312
!\210\202e
\\\202e
\246\320U\204eT\211\202\263\202e\321\203\323\315\"\202\325\312
!\"\210\202e\320
\211W\203\321\315\"8\n\233\"\210T\211\202\344*\202e
\n\233\306\211\203S@A@\211\232\204D\322=\204D:\203\312!\203\321A\"\210\306\211\204,\202e\315\"\323\f
$\210.\202)\207" [last spec item field type len nil 2 vec 3 eval (eval fill align struct union) apply bindat-get-field 1 #s(hash-table size 6 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (eval 144 fill 168 align 177 struct 198 repeat 221 union 262)) 0 bindat--pack-group t bindat--pack-item vectype tail struct bindat-idx count index cc case cases tag] 6])
#@232 Return binary data packed according to SPEC for structured data STRUCT.
Optional third arg BINDAT-RAW is a pre-allocated unibyte string or vector to
pack into.
Optional fourth arg BINDAT-IDX is the starting offset into BINDAT-RAW.
(defalias 'bindat-pack #[(spec struct &optional bindat-raw bindat-idx) "\305!\203\n\306\307!\210\n\204\310\204 \311\n\312\f\"\\\310\"\313\f\"\210	?\205+)\207" [bindat-raw no-return bindat-idx spec struct multibyte-string-p error "Pre-allocated string is multibyte" 0 make-string bindat-length bindat--pack-group] 5 (#$ . 9055)])
#@239 Format vector VECT using element format FMT and separator SEP.
Result is a string with each element of VECT formatted using FMT and
separated by the string SEP.  If optional fourth arg LEN is given, use
only that many elements from VECT.
(defalias 'bindat-format-vector #[(vect fmt sep &optional len) "\204	G\nP\306\307V\2034S\310\307U\203(\202)
	H\"\fB\202\311\312\f\"+\207" [len vect sep fmt s fmt2 nil 0 format apply concat i] 4 (#$ . 9636)])
#@120 Format vector VECT in decimal format separated by dots.
If optional second arg SEP is a string, use that as separator.
(defalias 'bindat-vector-to-dec #[(vect &optional sep) "\302\303	;\203\f	\202
\304#\207" [vect sep bindat-format-vector "%d" "."] 4 (#$ . 10116)])
#@116 Format vector VECT in hex format separated by dots.
If optional second arg SEP is a string, use that as separator.
(defalias 'bindat-vector-to-hex #[(vect &optional sep) "\302\303	;\203\f	\202
\304#\207" [vect sep bindat-format-vector "%02x" ":"] 4 (#$ . 10392)])
#@115 Format vector IP as an ip address in dotted notation.
The port (if any) is omitted.  IP can be a string, as well.
(defalias 'bindat-ip-to-string #[(ip) "\301!\203\302\303\"\207\304\305\306H\307H\310H\311H%\207" [ip vectorp format-network-address t format "%d.%d.%d.%d" 0 1 2 3] 7 (#$ . 10666)])
(provide 'bindat)

Zerion Mini Shell 1.0