/// <summary> /// Устанавливает определенные флаги /// </summary> /// <param name="flags"></param> public void Set(BSharpClassAttributes flags) { _attributes = _attributes | flags; if ( flags == BSharpClassAttributes.RequireClassResolution || flags == BSharpClassAttributes.RequireDictionaryResolution || flags == BSharpClassAttributes.RequireAdvancedIncludes ) { _attributes = _attributes | BSharpClassAttributes.RequireLinking; } else if ( flags == BSharpClassAttributes.Override || flags == BSharpClassAttributes.Extension ) { if (null == TargetClassName) { TargetClassName = Name; string name = flags.ToString() + "_" + Name + "_" + Source.Attr("name") + "_" + EXTCOUNTER++; Name = name; } _attributes = _attributes | BSharpClassAttributes.Explicit; Remove(BSharpClassAttributes.Orphan); } else if (flags == BSharpClassAttributes.Explicit) { Remove(BSharpClassAttributes.Orphan); } }
/// <summary> /// Устанавливает определенные флаги /// </summary> /// <param name="flags"></param> public void Set(BSharpClassAttributes flags){ _attributes = _attributes | flags; if ( flags == BSharpClassAttributes.RequireClassResolution || flags == BSharpClassAttributes.RequireDictionaryResolution || flags == BSharpClassAttributes.RequireAdvancedIncludes ){ _attributes = _attributes | BSharpClassAttributes.RequireLinking; } else if ( flags == BSharpClassAttributes.Override || flags == BSharpClassAttributes.Extension ){ if (null == TargetClassName){ TargetClassName = Name; string name = flags.ToString() + "_" + Name + "_" + Source.Attr("name") + "_" + EXTCOUNTER++; Name = name; } _attributes = _attributes | BSharpClassAttributes.Explicit; Remove(BSharpClassAttributes.Orphan); } else if (flags == BSharpClassAttributes.Explicit){ Remove(BSharpClassAttributes.Orphan); } }