Exemple #1
0
        protected override sealed Token GetToken(ILinedInputText text, YamlTokenizationContext context)
        {
            if (context == null)
            {
                throw new ArgumentNullException(nameof(context));
            }

            if (context.DocumentState == DocumentState.DirectivePreamble)
            {
                var preambleToken = GetToken(text, DocumentDirectivePreambleTokens);

                if (preambleToken != null)
                {
                    return(preambleToken);
                }
            }

            if (context.BlockScalarState != BlockScalarState.Within)
            {
                return(base.GetToken(text, context));
            }

            BlockScalarLine.TryMatch(text, out Token token);

            if (token != null)
            {
                return(token);
            }

            NewLine.TryMatch(text, out Token newLine);

            return(newLine);
        }
Exemple #2
0
 protected virtual Token GetToken(ILinedInputText text, TTokenizationContext context) => GetToken(text);