diff options
Diffstat (limited to 'vanilla/node_modules/tldts-core/src/lookup/fast-path.ts')
| -rw-r--r-- | vanilla/node_modules/tldts-core/src/lookup/fast-path.ts | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/vanilla/node_modules/tldts-core/src/lookup/fast-path.ts b/vanilla/node_modules/tldts-core/src/lookup/fast-path.ts deleted file mode 100644 index f80898f..0000000 --- a/vanilla/node_modules/tldts-core/src/lookup/fast-path.ts +++ /dev/null @@ -1,80 +0,0 @@ -import { IPublicSuffix, ISuffixLookupOptions } from './interface'; - -export default function ( - hostname: string, - options: ISuffixLookupOptions, - out: IPublicSuffix, -): boolean { - // 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 && hostname.length > 3) { - const last: number = hostname.length - 1; - const c3: number = hostname.charCodeAt(last); - const c2: number = hostname.charCodeAt(last - 1); - const c1: number = hostname.charCodeAt(last - 2); - const c0: number = 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; -} |
