namespace Syntriax.Engine.Core.Abstract; /// /// Indicates the object is an with an assignable field. /// public interface IHasHierarchyObject : IAssignable { /// /// Event triggered when the value has has been assigned a new value. /// event HierarchyObjectAssignedEventHandler? OnHierarchyObjectAssigned; /// IHierarchyObject HierarchyObject { get; } /// /// Assign a value to the field of this object. /// /// New to assign. /// /// , if the value given assigned successfully assigned, if not. /// bool Assign(IHierarchyObject hierarchyObject); delegate void HierarchyObjectAssignedEventHandler(IHasHierarchyObject sender); }