Editor/Embedded/Datamodel/Format/AttributeNamingConventionAttribute.cs

An abstract attribute class used in the editor datamodel formatting system, intended to be subclassed to provide custom naming rules for attributes. It declares a single abstract method GetAttributeName that returns an attribute name given a property name and its Type.

#nullable enable
using System;
using System.Collections.Generic;
using System.Linq;
using System.Numerics;

namespace HumanoidRetargeter.EditorTools.Embedded.Datamodel.Format;

/// <summary>
/// Subclass this attribute to define a custom attribute name convention.
/// </summary>
[AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = false)]
public abstract class AttributeNamingConventionAttribute : System.Attribute
{
    public abstract string GetAttributeName(string propertyName, Type propertyType);
}