You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
912 B
34 lines
912 B
using System;
|
|
using JetBrains.Annotations;
|
|
|
|
namespace TNode.Attribute.Ports{
|
|
|
|
public enum PortNameHandling{
|
|
Auto,
|
|
MemberName,
|
|
Manual,
|
|
Format,
|
|
MemberType
|
|
}
|
|
|
|
public enum TypeHandling{
|
|
Declared,
|
|
Implemented,
|
|
Specified
|
|
}
|
|
[MeansImplicitUse]
|
|
[AttributeUsage(AttributeTargets.Property, AllowMultiple = true)]
|
|
public class PortAttribute:System.Attribute{
|
|
public readonly string Name;
|
|
public readonly PortNameHandling NameHandling;
|
|
public Type HandledType;
|
|
public TypeHandling TypeHandling{ get; set; }
|
|
public PortAttribute(string name,PortNameHandling nameHandling=PortNameHandling.Auto,TypeHandling typeHandling=TypeHandling.Declared){
|
|
this.Name = name;
|
|
this.NameHandling = nameHandling;
|
|
this.TypeHandling = typeHandling;
|
|
}
|
|
|
|
|
|
}
|
|
} |