20 lines
		
	
	
		
			457 B
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			457 B
		
	
	
	
		
			C#
		
	
	
	
	
	
namespace Engine.Core;
 | 
						|
 | 
						|
/// <summary>
 | 
						|
/// Represents an entity with a name.
 | 
						|
/// </summary>
 | 
						|
public interface INameable
 | 
						|
{
 | 
						|
    /// <summary>
 | 
						|
    /// Event triggered when the name of the entity changes.
 | 
						|
    /// </summary>
 | 
						|
    Event<INameable, NameChangedArguments> OnNameChanged { get; }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// The name of the entity.
 | 
						|
    /// </summary>
 | 
						|
    string Name { get; set; }
 | 
						|
 | 
						|
    readonly record struct NameChangedArguments(string PreviousName);
 | 
						|
}
 |