SigStat by Bence Kovari

<PackageReference Include="SigStat" Version="0.2.5" />

 FeatureDescriptor

public class FeatureDescriptor
Represents a feature with name and type.
protected static readonly Dictionary<string, FeatureDescriptor> descriptors

The static dictionary of all descriptors.

public Type FeatureType { get; set; }

Gets or sets the type of the feature.

public bool IsCollection { get; }

Gets whether the type of the feature is List.

public string Key { get; protected set; }

Gets the unique key of the feature.

public string Name { get; set; }

Gets or sets a human readable name of the feature.

protected FeatureDescriptor(string name, string key, Type featureType)

Initializes a new instance of the FeatureDescriptor class, and adds it to the static descriptors. Therefore, the key parameter must be unique.

public static FeatureDescriptor Get(string key)

Gets the FeatureDescriptor specified by key. Throws KeyNotFoundException exception if there is no descriptor registered with the given key.

public static FeatureDescriptor<T> Get<T>(string key)

Gets the FeatureDescriptor<T> specified by key. If the key is not registered yet, a new FeatureDescriptor<T> is automatically created with the given key and type.

public static Dictionary<string, FeatureDescriptor> GetAll()

Gets a dictionary of all registered feature descriptors

public static bool IsRegistered(string featureKey)

Returns true, if there is a FeatureDescriptor registered with the given key

public static FeatureDescriptor Register(string featureKey, Type type)

Registers a new FeatureDescriptor with a given key. If the FeatureDescriptor is allready registered, this function will return a reference to the originally registered FeatureDescriptor. to the a