private static unsafe ParsingError ParseScheme(string uriString, ref Flags flags, ref UriParser syntax)
{
int length = uriString.Length;
if (length == 0)
return ParsingError.EmptyUriString;
if (length >= c_MaxUriBufferSize)
return ParsingError.SizeLimit;
//STEP1: parse scheme, lookup this Uri Syntax or create one using UnknownV1SyntaxFlags uri syntax template
fixed (char* pUriString = uriString)
{
ParsingError err = ParsingError.None;
ushort idx = ParseSchemeCheckImplicitFile(pUriString, (ushort)length, ref err, ref flags, ref syntax);
if (err != ParsingError.None)
return err;
flags |= (Flags)idx;
}
return ParsingError.None;
}