public PatchMetaClass(Type type)
{
this.type = type;
Attributes = type.GetCustomAttribute<PatchAttribute> ();
var ins = new ArrayList<InletMetaData> ();
var outs = new ArrayList<OutletMetaData> ();
foreach (var prop in type.GetProperties()) {
if (prop.HasCustomAttribute<InletAttribute> ())
ins.Add(new InletMetaData(this, prop));
if (prop.HasCustomAttribute<OutletAttribute> ())
outs.Add(new OutletMetaData(this, prop));
}
this.inlets = ins.ToArray();
this.outlets = outs.ToArray();
Name = Attributes.Name ?? type.Name;
}