예제 #1
0
        /// <inheritdoc />
        public override IEnumerable <TokenPair> Tokenize(TokenInfo token, ParserOptions options)
        {
            var trim = token.Token;

            if (trim.StartsWith(TagOpen, StringComparison.OrdinalIgnoreCase))
            {
                yield return(new TokenPair(TagOpen.Trim(), token.TokenizerContext.CurrentLocation, ExpressionParser.ParseExpression(trim.Remove(0, OpenTag.Length).Trim(), token.TokenizerContext)));
            }
            if (string.Equals(trim, TagClose, StringComparison.OrdinalIgnoreCase))
            {
                yield return(new TokenPair(TagClose, trim, token.TokenizerContext.CurrentLocation));
            }
        }
        /// <inheritdoc />
        public override IEnumerable <TokenPair> Tokenize(TokenInfo token, ParserOptions options)
        {
            var trim = token.Token;

            if (trim.StartsWith(TagOpen))
            {
                yield return(new TokenPair(TagOpen.Trim(),
                                           token.TokenizerContext.CurrentLocation, ExpressionParser.ParseExpression(trim.Remove(0, OpenTag.Length).Trim(), token.TokenizerContext)));
            }
            if (trim == TagClose)
            {
                yield return(new TokenPair(TagClose, trim, token.TokenizerContext.CurrentLocation));
            }
        }