docs.unity3d.com
    Show / Hide Table of Contents

    Class SingleDecoratorProvider<TDecorated, TDecorator, TAttribute>

    Inheritance
    Object
    SingleDecoratorProvider<TDecorated, TDecorator, TAttribute>
    AnalyserProvider
    AotStubWriterProvider
    CanvasProvider
    DescriptorProvider
    EditorProvider
    FuzzyOptionProvider
    GraphContextProvider
    InspectorProvider
    SerializedPropertyProviderProvider
    WidgetProvider
    Namespace: Unity.VisualScripting
    Syntax
    public abstract class SingleDecoratorProvider<TDecorated, TDecorator, TAttribute>
        where TAttribute : Attribute, IDecoratorAttribute
    Type Parameters
    Name Description
    TDecorated
    TDecorator
    TAttribute

    Constructors

    SingleDecoratorProvider()

    Declaration
    protected SingleDecoratorProvider()

    Fields

    decorateds

    Declaration
    protected readonly Dictionary<TDecorator, TDecorated> decorateds
    Field Value
    Type Description
    Dictionary<TDecorator, TDecorated>

    decorators

    Declaration
    protected readonly Dictionary<TDecorated, TDecorator> decorators
    Field Value
    Type Description
    Dictionary<TDecorated, TDecorator>

    definedDecoratorTypes

    Declaration
    protected readonly Dictionary<Type, Type> definedDecoratorTypes
    Field Value
    Type Description
    Dictionary<Type, Type>

    instancesLock

    Declaration
    protected readonly object instancesLock
    Field Value
    Type Description
    Object

    resolvedDecoratorTypes

    Declaration
    protected readonly Dictionary<Type, Type> resolvedDecoratorTypes
    Field Value
    Type Description
    Dictionary<Type, Type>

    typesLock

    Declaration
    protected readonly object typesLock
    Field Value
    Type Description
    Object

    Properties

    cache

    Declaration
    protected abstract bool cache { get; }
    Property Value
    Type Description
    Boolean

    freeInterval

    Declaration
    protected virtual TimeSpan freeInterval { get; }
    Property Value
    Type Description
    TimeSpan

    typeset

    Declaration
    protected virtual IEnumerable<Type> typeset { get; }
    Property Value
    Type Description
    IEnumerable<Type>

    Methods

    CreateDecorator(Type, TDecorated)

    Declaration
    protected virtual TDecorator CreateDecorator(Type decoratorType, TDecorated decorated)
    Parameters
    Type Name Description
    Type decoratorType
    TDecorated decorated
    Returns
    Type Description
    TDecorator

    Free(TDecorator)

    Declaration
    public void Free(TDecorator decorator)
    Parameters
    Type Name Description
    TDecorator decorator

    Free(IEnumerable<TDecorator>)

    Declaration
    public void Free(IEnumerable<TDecorator> decorators)
    Parameters
    Type Name Description
    IEnumerable<TDecorator> decorators

    FreeAll()

    Declaration
    public void FreeAll()

    FreeInvalid()

    Declaration
    public void FreeInvalid()

    GetDecoratedType(TDecorated)

    Declaration
    protected virtual Type GetDecoratedType(TDecorated decorated)
    Parameters
    Type Name Description
    TDecorated decorated
    Returns
    Type Description
    Type

    GetDecorator(TDecorated)

    Declaration
    public TDecorator GetDecorator(TDecorated decorated)
    Parameters
    Type Name Description
    TDecorated decorated
    Returns
    Type Description
    TDecorator

    GetDecorator<T>(TDecorated)

    Declaration
    public T GetDecorator<T>(TDecorated decorated)
        where T : TDecorator
    Parameters
    Type Name Description
    TDecorated decorated
    Returns
    Type Description
    T
    Type Parameters
    Name Description
    T

    GetDecoratorType(Type)

    Declaration
    public Type GetDecoratorType(Type decoratedType)
    Parameters
    Type Name Description
    Type decoratedType
    Returns
    Type Description
    Type

    HasDecorator(Type)

    Declaration
    public bool HasDecorator(Type decoratedType)
    Parameters
    Type Name Description
    Type decoratedType
    Returns
    Type Description
    Boolean

    IsValid(TDecorated)

    Declaration
    public abstract bool IsValid(TDecorated decorated)
    Parameters
    Type Name Description
    TDecorated decorated
    Returns
    Type Description
    Boolean

    Renew<TSpecificDecorator>(ref TSpecificDecorator, TDecorated, Func<TDecorated, TSpecificDecorator>)

    Declaration
    public void Renew<TSpecificDecorator>(ref TSpecificDecorator decorator, TDecorated decorated, Func<TDecorated, TSpecificDecorator> constructor = null)
        where TSpecificDecorator : TDecorator
    Parameters
    Type Name Description
    TSpecificDecorator decorator
    TDecorated decorated
    Func<TDecorated, TSpecificDecorator> constructor
    Type Parameters
    Name Description
    TSpecificDecorator

    ResolveDecoratorType(Type)

    Declaration
    protected virtual Type ResolveDecoratorType(Type decoratedType)
    Parameters
    Type Name Description
    Type decoratedType
    Returns
    Type Description
    Type

    ResolveDecoratorTypeByHierarchy(Type, Boolean)

    Declaration
    protected Type ResolveDecoratorTypeByHierarchy(Type decoratedType, bool inherit = true)
    Parameters
    Type Name Description
    Type decoratedType
    Boolean inherit
    Returns
    Type Description
    Type

    TryGetDecoratorType(Type, out Type)

    Declaration
    public bool TryGetDecoratorType(Type decoratedType, out Type decoratorType)
    Parameters
    Type Name Description
    Type decoratedType
    Type decoratorType
    Returns
    Type Description
    Boolean

    Extension Methods

    XAnalyserProvider.Analyser(Object, IGraphContext)
    XAnalyserProvider.Analyser<TAnalyser>(Object, IGraphContext)
    XAnalyserProvider.Analysis(Object, IGraphContext)
    XAnalyserProvider.Analysis<TAnalysis>(Object, IGraphContext)
    XAnalyserProvider.Analyser(Object, GraphReference)
    XAnalyserProvider.Analyser<TAnalyser>(Object, GraphReference)
    XAnalyserProvider.Analysis(Object, GraphReference)
    XAnalyserProvider.Analysis<TAnalysis>(Object, GraphReference)
    XDescriptorProvider.Describe(Object)
    XDescriptorProvider.HasDescriptor(Object)
    XDescriptorProvider.Descriptor(Object)
    XDescriptorProvider.Descriptor<TDescriptor>(Object)
    XDescriptorProvider.Description(Object)
    XDescriptorProvider.Description<TDescription>(Object)
    Cloning.Clone(Object, ICloner, Boolean)
    Cloning.Clone<T>(T, ICloner, Boolean)
    Cloning.CloneViaFakeSerialization(Object)
    Cloning.CloneViaFakeSerialization<T>(T)
    ConversionUtility.IsConvertibleTo(Object, Type, Boolean)
    ConversionUtility.IsConvertibleTo<T>(Object, Boolean)
    ConversionUtility.ConvertTo(Object, Type)
    ConversionUtility.ConvertTo<T>(Object)
    TypeUtility.ToShortString(Object, Int32)
    Serialization.CloneViaSerialization<T>(T, Boolean)
    Serialization.CloneViaSerializationInto<TSource, TDestination>(TSource, ref TDestination, Boolean)
    Serialization.Serialize(Object, Boolean)
    LinqUtility.Yield<T>(T)
    UnityObjectUtility.IsUnityNull(Object)
    UnityObjectUtility.ToSafeString(Object)
    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