| Server IP : 217.160.0.212 / Your IP : 216.73.216.141 Web Server : Apache System : Linux www 6.18.51-i1-ampere #1196 SMP Fri Sep 11 20:43:55 CEST 2026 aarch64 User : sws1073854427 ( 1073854427) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /usr/share/emacs/28.2/lisp/net/ |
Upload File : |
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.
(require 'seq)
#@116 Encode DOMAIN according to the IDNA/punycode algorithm.
For instance, "fśf.org" => "xn--ff-2sa.org".
(fn DOMAIN)
(defalias 'puny-encode-domain #[257 "\300\301\"\203 \207\302\303\304\305\"\306#\207" [string-match "\\`[[:ascii:]]+\\'" mapconcat puny-encode-string split-string "[.]" "."] 6 (#$ . 100)])
#@161 Encode STRING according to the IDNA/punycode algorithm.
This is used to encode non-ASCII domain names.
For instance, "bücher" => "xn--bcher-kva".
(fn STRING)
(defalias 'puny-encode-string #[257 "\300\301\"\211GGU\203 \207\302\204 \303\202 \304P\305G\"Q\207" [seq-filter #[257 "\211\300W\207" [128] 3 "\n\n(fn CHAR)"] "xn--" "" "-" puny-encode-complex] 7 (#$ . 413)])
#@116 Decode DOMAIN according to the IDNA/punycode algorithm.
For instance, "xn--ff-2sa.org" => "fśf.org".
(fn DOMAIN)
(defalias 'puny-decode-domain #[257 "\300\301\302\303\"\304#\207" [mapconcat puny-decode-string split-string "[.]" "."] 6 (#$ . 799)])
#@97 Decode an IDNA/punycode-encoded string.
For instance "xn--bcher-kva" => "bücher".
(fn STRING)
(defalias 'puny-decode-string #[257 "\300\301\"\203 \3021 \303\304\305O!0\207\210\207\207" [string-match "\\`xn--" (args-out-of-range) puny-decode-string-internal 4 nil] 5 (#$ . 1056)])
(defconst puny-initial-n 128)
(defconst puny-initial-bias 72)
(defconst puny-base 36)
(defconst puny-damp 700)
(defconst puny-tmin 1)
(defconst puny-tmax 26)
(defconst puny-skew 38)
#@10
(fn D)
(defalias 'puny-encode-digit #[257 "\211\300W\203\n \301\\\207\302\300Z\\\207" [26 97 48] 4 (#$ . 1530)])
#@36
(fn DELTA NUM-POINTS FIRST-TIME)
(defalias 'puny-adapt #[771 "\211\203\n \245\202
\305\245\306\211\245\\\262 \nZ_\305\245V\2030 \nZ\245\262\211 \\\262\202 \211 \nZT_\f\\\245\\\207" [puny-damp puny-base puny-tmin puny-tmax puny-skew 2 0] 9 (#$ . 1653)])
#@32
(fn INSERTION-POINTS STRING)
(defalias 'puny-encode-complex #[514 "\305 \306\211\211\211 GW\203\307\306\211T\211\262\203@ \fGW\203@ H\262Y\203 \211\203: \211^\202; \262\202 \266\202\262\262 ZT_\\\262\262\307\306T\211\262\203\366 GW\203\366 \nH\262\211\nW\203{ T\262 \211U\203Y \262\n\306\211X\203\223 \202\244 \f\\Y\203\240 \f\202\244 Z\262Y\203\323 \310\311Z\nZ\"\\! B\262 Z\nZ\245\262\n\\\262\306\262\202\210 \266\310!B\262\312 T U#\262\305\262 T\262\202Y \266T\262T\262\202 \237\207" [puny-initial-n puny-initial-bias puny-base puny-tmin puny-tmax 0 nil -1 puny-encode-digit mod puny-adapt] 21 (#$ . 1930)])
#@11
(fn CP)
(defalias 'puny-decode-digit #[257 "\211\301X\203\f \211\302Z\303\\\207\211\304X\203 \211\305Z\207\211\306X\203 \211\307Z\207\207" [puny-base 57 48 26 90 65 122 97] 3 (#$ . 2649)])
#@15
(fn STRING)
(defalias 'puny-decode-string-internal #[257 "\305\306\307\"r\211q\210\310\311\"\216c\210\312\313\314\315#\203 `T\202 `d{\316\211 \314`d|\210GW\203\265 \317\n\314\211\320H!\262 T\262\n_\\\262 X\203W \202h \f\\Y\203d \f\202h Z\262Y\203 \nZ_\262\n\\\262\2026 \321 T\262\322 Z\316U#\262\266\245\\\262\323\"\262eb\210u\210\324\325\"c\210T\262\202) \266\326 *\207" [puny-initial-bias puny-initial-n puny-base puny-tmin puny-tmax generate-new-buffer " *temp*" t make-closure #[0 "\301\300!\205 \302\300!\207" [V0 buffer-name kill-buffer] 2] search-backward "-" nil move 0 1 puny-decode-digit buffer-size puny-adapt mod format "%c" buffer-string] 18 (#$ . 2849)])
#@288 Say whether STRING is "highly restrictive" in the Unicode IDNA sense.
See https://www.unicode.org/reports/tr39/#Restriction_Level_Detection
for details. The main idea is that if you're mixing
scripts (like latin and cyrillic), you may confuse the user by
using homographs.
(fn STRING)
(defalias 'puny-highly-restrictive-string-p #[257 "\300\301\302\303\304\"!\"\211G\305U\206 \306\307\310\311\312\"\313\"\"\207" [delq t seq-uniq seq-map #[257 "\211\301>\203 \302\207H\207" [char-script-table (39 45 46 58 183 1418 1523 1524 3851 8204 8205 8208 8217 8231 12448 12539) t] 3 "\n\n(fn CHAR)"] 1 seq-some identity mapcar make-closure #[257 "\301\302\303\"\300\"\207" [V0 seq-every-p make-closure #[257 "\211\300>\207" [V0] 3 "\n\n(fn SCRIPT)"]] 5 "\n\n(fn LIST)"] ((latin han hiragana kana) (latin han bopomofo) (latin han hangul))] 8 (#$ . 3588)])
#@144 Say whether DOMAIN is "highly restrictive" in the Unicode IDNA sense.
See `puny-highly-restrictive-string-p' for further details.
(fn DOMAIN)
(defalias 'puny-highly-restrictive-domain-p #[257 "\300\301\302\303\"\"\207" [seq-every-p puny-highly-restrictive-string-p split-string "[.]"] 6 (#$ . 4448)])
(provide 'puny)