28 lines
776 B
C#
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.");
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|