Class TypeConstruction | Properties | 1.4.3-preview
docs.unity3d.com
    Show / Hide Table of Contents

    Class TypeConstruction

    Helper class to create new instances for given types.

    Inheritance
    Object
    TypeConstruction
    Namespace: Unity.Properties.Editor
    Syntax
    public static class TypeConstruction

    Methods

    CanBeConstructed(Type)

    Returns true if the specified type is constructable.

    Declaration
    public static bool CanBeConstructed(Type type)
    Parameters
    Type Name Description
    Type type

    The type to query.

    Returns
    Type Description
    Boolean

    true if the given type is constructable.

    Remarks

    Constructable is defined as either having a default or implicit constructor or having a registered construction method.

    CanBeConstructed<T>()

    Returns true if type is constructable.

    Declaration
    public static bool CanBeConstructed<T>()
    Returns
    Type Description
    Boolean

    true if type is constructable.

    Type Parameters
    Name Description
    T

    The type to query.

    Remarks

    Constructable is defined as either having a default or implicit constructor or having a registered construction method.

    CanBeConstructedFromDerivedType<T>()

    Returns true if type is constructable from any of its derived types.

    Declaration
    public static bool CanBeConstructedFromDerivedType<T>()
    Returns
    Type Description
    Boolean

    true if type is constructable from any of its derived types.

    Type Parameters
    Name Description
    T

    The type to query.

    Remarks

    Constructable is defined as either having a default or implicit constructor or having a registered construction method.

    Construct<TType>()

    Constructs a new instance of the specified .

    Declaration
    public static TType Construct<TType>()
    Returns
    Type Description
    TType

    A new instance of the .

    Type Parameters
    Name Description
    TType

    The type we want to create a new instance of.

    Construct<TType>(Type)

    Constructs a new instance of the given type type and returns it as .

    Declaration
    public static TType Construct<TType>(Type derivedType)
    Parameters
    Type Name Description
    Type derivedType

    The type we want to create a new instance of.

    Returns
    Type Description
    TType

    a new instance of the type.

    Type Parameters
    Name Description
    TType

    The type we want to create a new instance of.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the given type is not assignable to

    ConstructArray<TArray>(Int32)

    Construct a new instance of an array with the given count.

    Declaration
    public static TArray ConstructArray<TArray>(int count = 0)
    Parameters
    Type Name Description
    Int32 count

    The size of the array to construct.

    Returns
    Type Description
    TArray

    The array newly constructed array.

    Type Parameters
    Name Description
    TArray

    The array type to construct.

    Exceptions
    Type Condition
    ArgumentException

    Thrown is count is negative or if is not an array type.

    GetAllConstructableTypes(Type)

    Returns a list of all the constructable types from the provided type.

    Declaration
    public static IEnumerable<Type> GetAllConstructableTypes(Type type)
    Parameters
    Type Name Description
    Type type

    The type to query.

    Returns
    Type Description
    IEnumerable<Type>

    A list of all the constructable types from the provided type.

    GetAllConstructableTypes(Type, List<Type>)

    Adds all the constructable types from the provided type to the given list.

    Declaration
    public static void GetAllConstructableTypes(Type type, List<Type> result)
    Parameters
    Type Name Description
    Type type

    The type to query.

    List<Type> result

    List to contain the results.

    GetAllConstructableTypes<TType>()

    Returns a list of all the constructable types from the type.

    Declaration
    public static IEnumerable<Type> GetAllConstructableTypes<TType>()
    Returns
    Type Description
    IEnumerable<Type>

    A list of all the constructable types from the type.

    Type Parameters
    Name Description
    TType

    The type to query.

    GetAllConstructableTypes<TType>(List<Type>)

    Adds all the constructable types from the type to the given list.

    Declaration
    public static void GetAllConstructableTypes<TType>(List<Type> result)
    Parameters
    Type Name Description
    List<Type> result

    List to contain the results.

    Type Parameters
    Name Description
    TType

    The type to query.

    SetExplicitConstructionMethod<TType>(TypeConstruction.ConstructorMethod<TType>)

    Sets an explicit construction method for the type.

    Declaration
    public static void SetExplicitConstructionMethod<TType>(TypeConstruction.ConstructorMethod<TType> constructor)
    Parameters
    Type Name Description
    TypeConstruction.ConstructorMethod<TType> constructor

    The construction method.

    Type Parameters
    Name Description
    TType

    The type to set the explicit construction method.

    TryConstruct<TType>(out TType)

    Constructs a new instance of the specified .

    Declaration
    public static bool TryConstruct<TType>(out TType instance)
    Parameters
    Type Name Description
    TType instance

    When this method returns, contains the created instance, if type construction succeeded; otherwise, the default value for TType.

    Returns
    Type Description
    Boolean

    true if a new instance of type was created; otherwise, false.

    Type Parameters
    Name Description
    TType

    The type to create an instance of.

    TryConstruct<TType>(Type, out TType)

    Tries to constructs a new instance of the given type type and returns it as .

    Declaration
    public static bool TryConstruct<TType>(Type derivedType, out TType value)
    Parameters
    Type Name Description
    Type derivedType

    The type we want to create a new instance of.

    TType value

    When this method returns, contains the created instance, if type construction succeeded; otherwise, the default value for TType.

    Returns
    Type Description
    Boolean

    true if a new instance of the given type could be created.

    Type Parameters
    Name Description
    TType

    The type we want to create a new instance of.

    TryConstructArray<TArray>(Int32, out TArray)

    Tries to construct a new instance of an array with the given count.

    Declaration
    public static bool TryConstructArray<TArray>(int count, out TArray instance)
    Parameters
    Type Name Description
    Int32 count

    The count the array should have.

    TArray instance

    When this method returns, contains the created instance, if type construction succeeded; otherwise, the default value for TType.

    Returns
    Type Description
    Boolean

    true if the type was constructed; otherwise, false.

    Type Parameters
    Name Description
    TArray

    The array type.

    Exceptions
    Type Condition
    ArgumentException

    Thrown is count is negative or if is not an array type.

    TrySetExplicitConstructionMethod<TType>(TypeConstruction.ConstructorMethod<TType>)

    Sets the explicit construction method for the .

    Declaration
    public static bool TrySetExplicitConstructionMethod<TType>(TypeConstruction.ConstructorMethod<TType> constructor)
    Parameters
    Type Name Description
    TypeConstruction.ConstructorMethod<TType> constructor

    The construction method.

    Returns
    Type Description
    Boolean

    true if the constructor was set; otherwise, false.

    Type Parameters
    Name Description
    TType

    The type to set the explicit construction method.

    TryUnsetExplicitConstructionMethod<TType>(TypeConstruction.ConstructorMethod<TType>)

    Un-sets the explicit construction method for the type.

    Declaration
    public static bool TryUnsetExplicitConstructionMethod<TType>(TypeConstruction.ConstructorMethod<TType> constructor)
    Parameters
    Type Name Description
    TypeConstruction.ConstructorMethod<TType> constructor

    The construction method.

    Returns
    Type Description
    Boolean

    true if the constructor was unset; otherwise, false.

    Type Parameters
    Name Description
    TType

    The type to set the explicit construction method.

    Remarks

    An explicit construction method can only be unset if it was previously set with the same instance.

    UnsetExplicitConstructionMethod<TType>(TypeConstruction.ConstructorMethod<TType>)

    Un-sets the explicit construction method for the type.

    Declaration
    public static void UnsetExplicitConstructionMethod<TType>(TypeConstruction.ConstructorMethod<TType> constructor)
    Parameters
    Type Name Description
    TypeConstruction.ConstructorMethod<TType> constructor

    The construction method.

    Type Parameters
    Name Description
    TType

    The type to set the explicit construction method.

    Remarks

    An explicit construction method can only be unset if it was previously set with the same instance.

    Back to top
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023