示例#1
0
        public void WriteValue(IValueWriter valueWriter, T value)
        {
            if (value == null)
            {
                valueWriter.DirectWrite(null);

                return;
            }

            var enumeratorReader = new EnumeratorReader <T, TValue>();

            enumeratorReader.Initialize(value);

            valueWriter.WriteArray(enumeratorReader);
        }
        public void WriteValue(IValueWriter valueWriter, T value)
        {
            if (value is null)
            {
                valueWriter.DirectWrite(null);

                return;
            }

            var enumeratorReader = new EnumeratorReader <T, TValue>
            {
                content = value
            };

            valueWriter.WriteArray(enumeratorReader);
        }
示例#3
0
        public void WriteValue(IValueWriter valueWriter, T value)
        {
            var enumerator = value?.GetEnumerator();

            if (enumerator == null)
            {
                valueWriter.DirectWrite(null);

                return;
            }

            var enumeratorReader = new EnumeratorReader <IEnumerator <TValue>, TValue>();

            enumeratorReader.Initialize(enumerator);

            valueWriter.WriteArray(enumeratorReader);
        }
示例#4
0
        public void WriteValue(IValueWriter valueWriter, T value)
        {
            var enumerator = value?.GetEnumerator();

            if (enumerator is null)
            {
                valueWriter.DirectWrite(null);

                return;
            }

            var enumeratorReader = new EnumeratorReader <IEnumerator <TValue>, TValue>
            {
                content = enumerator
            };

            valueWriter.WriteArray(enumeratorReader);
        }