public AttributeGen <TypeGen> BeginAttribute(AttributeType type, params object[] args) { AttributeTargets target = AttributeTargets.Class; if (baseType == null) { target = AttributeTargets.Interface; } else if (baseType == typeof(ValueType)) { target = AttributeTargets.Struct; } else { target = AttributeTargets.Class; } return(AttributeGen <TypeGen> .CreateAndAdd(this, ref customAttributes, target, type, args)); }
public AttributeGen <PropertyGen> BeginAttribute(AttributeType type, params object[] args) { return(AttributeGen <PropertyGen> .CreateAndAdd(this, ref customAttributes, AttributeTargets.Property, type, args)); }
public AttributeGen <T> BeginAttribute(AttributeType type, params object[] args) { return(AttributeGen <T> .CreateAndAdd(typedThis, ref customAttributes, AttributeTarget, type, args)); }
public AttributeGen <AssemblyGen> BeginModuleAttribute(AttributeType type, params object[] args) { return(AttributeGen <AssemblyGen> .CreateAndAdd(this, ref moduleAttributes, AttributeTargets.Module, type, args)); }
public new AttributeGen <ParameterGen <TOuterContext> > BeginAttribute(AttributeType type, params object[] args) { return(AttributeGen <ParameterGen <TOuterContext> > .CreateAndAdd(this, ref customAttributes, AttributeTargets.Delegate, type, args)); }
public AttributeGen <ParameterGen> BeginAttribute(AttributeType type, params object[] args) { return(AttributeGen <ParameterGen> .CreateAndAdd(this, ref customAttributes, position == 0?AttributeTargets.ReturnValue : AttributeTargets.Parameter, type, args)); }