private void AppendScope()

in src/Google.Cloud.Functions.Hosting/Logging/SimpleConsoleLogger.cs [62:98]


        private void AppendScope(object? value, StringBuilder builder)
        {
            if (value is null)
            {
                return;
            }
            if (builder.Length != 0)
            {
                builder.Append(", ");
            }
            // If the scope is a dictionary, format it as key/value pairs
            if (value is IEnumerable<KeyValuePair<string, object>> kvps)
            {
                builder.Append("{ ");
                bool first = true;
                foreach (var pair in kvps)
                {
                    if (first)
                    {
                        first = false;
                    }
                    else
                    {
                        builder.Append(", ");
                    }
                    builder.Append(pair.Key);
                    builder.Append(": ");
                    builder.Append(ToInvariantString(pair.Value));
                }
                builder.Append(" }");
            }
            // Otherwise, format it invariantly
            else
            {
                builder.Append(ToInvariantString(value));
            }
        }