/// <inheritdoc /> public override ConfigValuePart[] VisitFluff(ConfigReferenceParser.FluffContext context) { try { var builder = new StringBuilder(); foreach (var fluff in context.FLUFF().Concat(context.SINGLE_BRACES()) .OrderBy(t => t.Symbol.StartIndex)) { builder.Append(fluff.Symbol.Text); } var result = builder.ToString(); if (_logger.IsEnabled(LogLevel.Trace)) { _logger.LogTrace($"adding ValuePart: {result}"); } return(new ConfigValuePart[] { new ValuePart(result) }); } catch (Exception e) { _logger.LogError(e, "failed to add ValuePart"); return(new ConfigValuePart[0]); } }
/// <summary> /// Visit a parse tree produced by <see cref="ConfigReferenceParser.fluff"/>. /// <para> /// The default implementation returns the result of calling <see cref="AbstractParseTreeVisitor{Result}.VisitChildren(IRuleNode)"/> /// on <paramref name="context"/>. /// </para> /// </summary> /// <param name="context">The parse tree.</param> /// <return>The visitor result.</return> public virtual Result VisitFluff([NotNull] ConfigReferenceParser.FluffContext context) { return(VisitChildren(context)); }