private void MapProperty()

in src/PSDocs/Common/YamlConverters.cs [503:529]


        private void MapProperty(SelectorExpression.PropertyBag properties, IParser reader, Func<IParser, Type, object> nestedObjectDeserializer, out string name)
        {
            name = null;
            while (reader.TryConsume(out Scalar scalar))
            {
                string key = scalar.Value;
                if (TryCondition(key) || TryOperator(key))
                    name = key;

                if (reader.TryConsume(out scalar))
                {
                    properties[key] = scalar.Value;
                }
                else if (TryCondition(key) && reader.TryConsume<SequenceStart>(out _))
                {
                    var objects = new List<string>();
                    while (!reader.TryConsume<SequenceEnd>(out _))
                    {
                        if (reader.TryConsume(out scalar))
                        {
                            objects.Add(scalar.Value);
                        }
                    }
                    properties[key] = objects.ToArray();
                }
            }
        }