// 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/. namespace OpenTap { /// Hook into type reflection system. Provides type data for a given object or identifier. [Display("TypeData Provider")] public interface ITypeDataProvider : ITapPlugin { /// Gets the type data from an identifier. /// The identifier to get type information for. /// A representation of the type specified by identifier or null if this provider cannot handle the specified identifier. ITypeData GetTypeData(string identifier); /// Gets the type data from an object. /// The object to get type information for. /// A representation of the type of the specified object or null if this provider cannot handle the specified type of object. ITypeData GetTypeData(object obj); /// The priority of this type info provider. Note, this decides the order in which the type info is resolved. double Priority { get; } } }