// Copyright Keysight Technologies 2012-2019
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, you can obtain one at http://mozilla.org/MPL/2.0/.
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Xml.Linq;
namespace OpenTap.Plugins
{
/// Serializer implementation for default value attributes.
public class DefaultValueSerializer : TapSerializerPlugin
{
/// The order of this serializer.
public override double Order => 10;
HashSet elems = new HashSet();
readonly Dictionary defaultValueLookup = new Dictionary();
///
/// Registers a default value for an XML element.
///
///
///
public void RegisterDefaultValue(XElement elem, object value)
{
defaultValueLookup[elem] = value;
}
/// Deserialization implementation.
public override bool Deserialize(XElement element, ITypeData t, Action