// sets wrapped member for every builder info void SetWrappedMembers() { this.EventBuilderInfos.Cast <WrapperMemberBuilderInfoBase>() .Union(PropBuilderInfos.Where(propBuilderInfo => propBuilderInfo.MustImplement)) .Union(MethodBuilderInfos.Where(methodBuilderInfo => methodBuilderInfo.MustImplement)) .DoForEach(builderInfo => builderInfo.SetWrappedMembers(GetWrappedMemberInfos(builderInfo.WrapperSymbolBase))); }
public void SetOverrideVirtual(string memberName, bool includeBase = false) { WrapperMemberBuilderInfoBase builderInfoToSet = PropBuilderInfos.Cast <WrapperMemberBuilderInfoBase>() .Union(MethodBuilderInfos).First(builderInfo => builderInfo.WrapperSymbolName == memberName); builderInfoToSet.SetOverrideVirtual(includeBase); }
private void AddPropWraps(RoslynCodeBuilder roslynCodeBuilder) { if (PropBuilderInfos.IsNullOrEmpty()) { return; } roslynCodeBuilder.PushRegion("Generated Properties"); foreach (PropertyWrapperMemberBuilderInfo propBuilderInfo in this.PropBuilderInfos) { propBuilderInfo.Build(roslynCodeBuilder); } roslynCodeBuilder.PopRegion(); }