Esempio n. 1
0
        public override ILexer <HttpsUri> Create()
        {
            var innerLexer =
                Concatenation.Create(
                    Terminal.Create(@"https://", StringComparer.OrdinalIgnoreCase),
                    AuthorityLexerFactory.Create(),
                    PathAbsoluteOrEmptyLexerFactory.Create(),
                    Option.Create(
                        Concatenation.Create(
                            Terminal.Create(@"?", StringComparer.Ordinal),
                            QueryLexerFactory.Create())),
                    Option.Create(
                        Concatenation.Create(
                            Terminal.Create(@"#", StringComparer.Ordinal),
                            FragmentLexerFactory.Create())));

            return(new HttpsUriLexer(innerLexer));
        }