Lines Matching refs:result

729   const result = new Url();
733 result[tkey] = this[tkey];
738 result.hash = relative.hash;
742 result.href = result.format();
743 return result;
753 result[rkey] = relative[rkey];
757 if (slashedProtocol.has(result.protocol) &&
758 result.hostname && !result.pathname) {
759 result.path = result.pathname = '/';
762 result.href = result.format();
763 return result;
766 if (relative.protocol && relative.protocol !== result.protocol) {
779 result[k] = relative[k];
781 result.href = result.format();
782 return result;
785 result.protocol = relative.protocol;
795 result.pathname = relPath.join('/');
797 result.pathname = relative.pathname;
799 result.search = relative.search;
800 result.query = relative.query;
801 result.host = relative.host || '';
802 result.auth = relative.auth;
803 result.hostname = relative.hostname || relative.host;
804 result.port = relative.port;
806 if (result.pathname || result.search) {
807 const p = result.pathname || '';
808 const s = result.search || '';
809 result.path = p + s;
811 result.slashes = result.slashes || relative.slashes;
812 result.href = result.format();
813 return result;
816 const isSourceAbs = (result.pathname && result.pathname.charAt(0) === '/');
821 (result.host && relative.pathname));
823 let srcPath = (result.pathname && result.pathname.split('/')) || [];
825 const noLeadingSlashes = result.protocol &&
826 !slashedProtocol.has(result.protocol);
831 // result.protocol has already been set by now.
834 result.hostname = '';
835 result.port = null;
836 if (result.host) {
837 if (srcPath[0] === '') srcPath[0] = result.host;
838 else srcPath.unshift(result.host);
840 result.host = '';
844 result.auth = null;
857 if (result.host !== relative.host) result.auth = null;
858 result.host = relative.host;
859 result.port = relative.port;
862 if (result.hostname !== relative.hostname) result.auth = null;
863 result.hostname = relative.hostname;
865 result.search = relative.search;
866 result.query = relative.query;
875 result.search = relative.search;
876 result.query = relative.query;
882 result.hostname = result.host = srcPath.shift();
887 result.host && result.host.indexOf('@') > 0 && result.host.split('@');
889 result.auth = authInHost.shift();
890 result.host = result.hostname = authInHost.shift();
893 result.search = relative.search;
894 result.query = relative.query;
896 if (result.pathname !== null || result.search !== null) {
897 result.path = (result.pathname ? result.pathname : '') +
898 (result.search ? result.search : '');
900 result.href = result.format();
901 return result;
906 result.pathname = null;
908 if (result.search) {
909 result.path = '/' + result.search;
911 result.path = null;
913 result.href = result.format();
914 return result;
922 ((result.host || relative.host || srcPath.length > 1) &&
962 result.hostname =
963 result.host = isAbsolute ? '' : srcPath.length ? srcPath.shift() : '';
967 const authInHost = result.host && result.host.indexOf('@') > 0 ?
968 result.host.split('@') : false;
970 result.auth = authInHost.shift();
971 result.host = result.hostname = authInHost.shift();
975 mustEndAbs = mustEndAbs || (result.host && srcPath.length);
982 result.pathname = null;
983 result.path = null;
985 result.pathname = srcPath.join('/');
989 if (result.pathname !== null || result.search !== null) {
990 result.path = (result.pathname ? result.pathname : '') +
991 (result.search ? result.search : '');
993 result.auth = relative.auth || result.auth;
994 result.slashes = result.slashes || relative.slashes;
995 result.href = result.format();
996 return result;