// 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.Collections.Generic; namespace OpenTap { /// The type information of an object. public interface ITypeData : IReflectionData { /// The base type of this type. ITypeData BaseType { get; } /// Gets the members of this object. /// IEnumerable GetMembers(); /// Gets a member of this object by name. /// /// IMemberData GetMember(string name); /// /// Creates an instance of this type. The arguments are used for construction. /// /// /// object CreateInstance(object[] arguments); /// /// Gets if CreateInstance will work for this type. For examples, for interfaces and abstract classes it will not work. /// bool CanCreateInstance { get; } } }