private bool PrepareContainer()

in Microsoft.Shared.Dna.Json/JsonBuilder.cs [661:687]


        private bool PrepareContainer(int reserve, out int rollback)
        {
            rollback = this.builder.Length;
            if (this.truncated)
            {
                return false;
            }

            switch (this.Current)
            {
                case JsonTokenType.None:
                    return this.builder.Length == 0;
                case JsonTokenType.BeginArray:
                    if (this.builder.Last != JsonConstants.ArrayHeader)
                    {
                        return this.builder.TryAppend(JsonConstants.ElementSeparator, reserve, out rollback);
                    }

                    return true;
                case JsonTokenType.BeginObject:
                    return false;
                case JsonTokenType.BeginProperty:
                    return true;
            }

            return false;
        }