private static void ReadObject()

in src/PSRule.Rules.Azure/JsonConverters.cs [58:100]


    private static void ReadObject(PSObject value, JsonReader reader)
    {
        if (reader.TokenType != JsonToken.StartObject)
            throw new PipelineSerializationException(PSRuleResources.ReadJsonFailed);

        reader.Read();
        string name = null;

        // Read each token
        while (reader.TokenType != JsonToken.EndObject)
        {
            switch (reader.TokenType)
            {
                case JsonToken.PropertyName:
                    name = reader.Value.ToString();
                    break;

                case JsonToken.StartObject:
                    var child = new PSObject();
                    ReadObject(value: child, reader: reader);
                    value.Properties.Add(new PSNoteProperty(name: name, value: child));
                    break;

                case JsonToken.StartArray:
                    var items = new List<object>();
                    reader.Read();

                    while (reader.TokenType != JsonToken.EndArray)
                    {
                        items.Add(ReadValue(reader));
                        reader.Read();
                    }

                    value.Properties.Add(new PSNoteProperty(name: name, value: items.ToArray()));
                    break;

                default:
                    value.Properties.Add(new PSNoteProperty(name: name, value: reader.Value));
                    break;
            }
            reader.Read();
        }
    }