Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ TryCreate() [4/4]

static bool System.Uri.TryCreate ( Uri? baseUri,
Uri? relativeUri,
[NotNullWhen(true)] out Uri? result )
inlinestatic

Definition at line 3841 of file Uri.cs.

3842 {
3843 result = null;
3844 if ((object)baseUri == null || (object)relativeUri == null)
3845 {
3846 return false;
3847 }
3848 if (baseUri.IsNotAbsoluteUri)
3849 {
3850 return false;
3851 }
3852 UriFormatException parsingError = null;
3853 string newUriString = null;
3854 bool userEscaped;
3855 if (baseUri.Syntax.IsSimple)
3856 {
3857 userEscaped = relativeUri.UserEscaped;
3859 }
3860 else
3861 {
3862 userEscaped = false;
3863 newUriString = baseUri.Syntax.InternalResolve(baseUri, relativeUri, out parsingError);
3864 if (parsingError != null)
3865 {
3866 return false;
3867 }
3868 }
3869 if ((object)result == null)
3870 {
3871 string uriString = newUriString;
3872 bool dontEscape = userEscaped;
3873 UriCreationOptions creationOptions = default(UriCreationOptions);
3874 result = CreateHelper(uriString, dontEscape, UriKind.Absolute, ref parsingError, in creationOptions);
3875 }
3876 if (parsingError == null && result != null)
3877 {
3878 return result.IsAbsoluteUri;
3879 }
3880 return false;
3881 }
static Uri CreateHelper(string uriString, bool dontEscape, UriKind uriKind, ref UriFormatException e, in UriCreationOptions creationOptions=default(UriCreationOptions))
Definition Uri.cs:4107
static Uri ResolveHelper(Uri baseUri, Uri relativeUri, ref string newUriString, ref bool userEscaped)
Definition Uri.cs:4149
UriKind
Definition UriKind.cs:4

References System.Uri.CreateHelper(), System.creationOptions, System.Runtime.Serialization.Dictionary, System.UriParser.InternalResolve(), System.Uri.IsNotAbsoluteUri, System.UriParser.IsSimple, System.Uri.ResolveHelper(), and System.Uri.Syntax.