diff options
Diffstat (limited to 'bin/wiki/ImportarDesdeURL/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js')
-rw-r--r-- | bin/wiki/ImportarDesdeURL/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/bin/wiki/ImportarDesdeURL/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js b/bin/wiki/ImportarDesdeURL/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js new file mode 100644 index 00000000..fe919dec --- /dev/null +++ b/bin/wiki/ImportarDesdeURL/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js @@ -0,0 +1,66 @@ +export default function (hostname, options, out) { + // Fast path for very popular suffixes; this allows to by-pass lookup + // completely as well as any extra allocation or string manipulation. + if (options.allowPrivateDomains === false && hostname.length > 3) { + var last = hostname.length - 1; + var c3 = hostname.charCodeAt(last); + var c2 = hostname.charCodeAt(last - 1); + var c1 = hostname.charCodeAt(last - 2); + var c0 = hostname.charCodeAt(last - 3); + if (c3 === 109 /* 'm' */ && + c2 === 111 /* 'o' */ && + c1 === 99 /* 'c' */ && + c0 === 46 /* '.' */) { + out.isIcann = true; + out.isPrivate = false; + out.publicSuffix = 'com'; + return true; + } + else if (c3 === 103 /* 'g' */ && + c2 === 114 /* 'r' */ && + c1 === 111 /* 'o' */ && + c0 === 46 /* '.' */) { + out.isIcann = true; + out.isPrivate = false; + out.publicSuffix = 'org'; + return true; + } + else if (c3 === 117 /* 'u' */ && + c2 === 100 /* 'd' */ && + c1 === 101 /* 'e' */ && + c0 === 46 /* '.' */) { + out.isIcann = true; + out.isPrivate = false; + out.publicSuffix = 'edu'; + return true; + } + else if (c3 === 118 /* 'v' */ && + c2 === 111 /* 'o' */ && + c1 === 103 /* 'g' */ && + c0 === 46 /* '.' */) { + out.isIcann = true; + out.isPrivate = false; + out.publicSuffix = 'gov'; + return true; + } + else if (c3 === 116 /* 't' */ && + c2 === 101 /* 'e' */ && + c1 === 110 /* 'n' */ && + c0 === 46 /* '.' */) { + out.isIcann = true; + out.isPrivate = false; + out.publicSuffix = 'net'; + return true; + } + else if (c3 === 101 /* 'e' */ && + c2 === 100 /* 'd' */ && + c1 === 46 /* '.' */) { + out.isIcann = true; + out.isPrivate = false; + out.publicSuffix = 'de'; + return true; + } + } + return false; +} +//# sourceMappingURL=fast-path.js.map
\ No newline at end of file |