Singularity/Library/PackageCache/com.unity.visualscripting@1.../Editor/VisualScripting.State/Transitions/StateTransitionAnalyser.cs
2024-05-06 11:45:45 -07:00

28 lines
776 B
C#

using System.Collections.Generic;
namespace Unity.VisualScripting
{
public abstract class StateTransitionAnalyser<TStateTransition> : Analyser<TStateTransition, StateTransitionAnalysis>
where TStateTransition : IStateTransition
{
protected StateTransitionAnalyser(GraphReference reference, TStateTransition target) : base(reference, target) { }
public TStateTransition transition => target;
[Assigns]
protected virtual bool IsTraversed()
{
return true;
}
[Assigns]
protected virtual IEnumerable<Warning> Warnings()
{
if (!IsTraversed())
{
yield return Warning.Info("Transition is never traversed.");
}
}
}
}