protected virtual void ProcessSection(ISyntaxInfo Info) { if (Info is IRangeInfo) { IRangeInfo info1 = (IRangeInfo)Info; if (info1.StartPoint.Y >= 0) { this.sections.Add(info1); } this.ProcessSections(info1.Regions); this.ProcessSections(info1.Comments); } if (Info is IInterfaceInfo) { IInterfaceInfo info2 = (InterfaceInfo)Info; this.ProcessSections(info2.Methods); this.ProcessSections(info2.Properties); this.ProcessSections(info2.Events); } if (Info is IClassInfo) { IClassInfo info3 = (IClassInfo)Info; this.ProcessSections(info3.Classes); this.ProcessSections(info3.Interfaces); this.ProcessSections(info3.Structures); this.ProcessSections(info3.Enums); } if (Info is IMethodInfo) { this.ProcessSections(((IMethodInfo)Info).Statements); } else if (Info is IPropInfo) { IPropInfo info4 = (ICsPropInfo)Info; if (info4.PropertyGet != null) { this.ProcessSection(info4.PropertyGet); } if (info4.PropertySet != null) { this.ProcessSection(info4.PropertySet); } } else if (Info is IEventInfo) { IEventInfo info5 = (ICsEventInfo)Info; if (info5.EventAdd != null) { this.ProcessSection(info5.EventAdd); } if (info5.EventRemove != null) { this.ProcessSection(info5.EventRemove); } } else if (Info is IAccessorInfo) { this.ProcessSections(((IAccessorInfo)Info).Statements); } }
private void AddCodeMembers(IListMembers Provider, IInterfaceInfo Info, bool IsStatic) { this.AddCodeMembers(Info.Properties, Provider); this.AddCodeMembers(Info.Methods, Provider); this.AddCodeMembers(Info.Events, Provider); if (Info is IClassInfo) { IClassInfo info1 = (IClassInfo)Info; this.AddCodeMembers(info1.Fields, Provider); this.AddCodeMembers(info1.Enums, Provider); this.AddCodeMembers(info1.Delegates, Provider); } }
static void AddPersistentMemberInfo(IPersistentClassInfo classInfo, PropertyInfo propertyInfo, IInterfaceInfo interfaceInfo) { Type memberInfoType = GetMemberInfoType(propertyInfo.PropertyType); var persistentMemberInfo = ((IPersistentMemberInfo)Activator.CreateInstance(memberInfoType, classInfo.Session)); classInfo.OwnMembers.Add(persistentMemberInfo); persistentMemberInfo.SetDefaultTemplate(TemplateType.InterfaceReadWriteMember); persistentMemberInfo.CodeTemplateInfo.TemplateInfo.TemplateCode = persistentMemberInfo.CodeTemplateInfo.TemplateInfo.TemplateCode.Replace("$INTERFACENAME$",interfaceInfo.Name); persistentMemberInfo.Name = propertyInfo.Name; if (persistentMemberInfo is IPersistentCoreTypeMemberInfo) ((IPersistentCoreTypeMemberInfo) persistentMemberInfo).DataType = (XPODataType) Enum.Parse(typeof (XPODataType), propertyInfo.PropertyType.Name); else if (persistentMemberInfo is IPersistentReferenceMemberInfo) ((IPersistentReferenceMemberInfo) persistentMemberInfo).ReferenceTypeFullName = propertyInfo.PropertyType.FullName; }
static void AddPersistentMemberInfo(IPersistentClassInfo classInfo, PropertyInfo propertyInfo, IInterfaceInfo interfaceInfo) { Type memberInfoType = GetMemberInfoType(propertyInfo.PropertyType); var persistentMemberInfo = ((IPersistentMemberInfo)memberInfoType.CreateInstance(classInfo.Session)); classInfo.OwnMembers.Add(persistentMemberInfo); persistentMemberInfo.SetDefaultTemplate(TemplateType.InterfaceReadWriteMember); persistentMemberInfo.CodeTemplateInfo.TemplateInfo.TemplateCode = persistentMemberInfo.CodeTemplateInfo.TemplateInfo.TemplateCode.Replace("$INTERFACENAME$", interfaceInfo.Name); persistentMemberInfo.Name = propertyInfo.Name; var info = persistentMemberInfo as IPersistentCoreTypeMemberInfo; if (info != null) info.DataType = (DBColumnType)Enum.Parse(typeof(DBColumnType), propertyInfo.PropertyType.Name); else { var memberInfo = persistentMemberInfo as IPersistentReferenceMemberInfo; if (memberInfo != null) memberInfo.SetReferenceTypeFullName(propertyInfo.PropertyType.FullName); } }
static void AddPersistentMemberInfo(IPersistentClassInfo classInfo, PropertyInfo propertyInfo, IInterfaceInfo interfaceInfo) { Type memberInfoType = GetMemberInfoType(propertyInfo.PropertyType); var persistentMemberInfo = ((IPersistentMemberInfo)memberInfoType.CreateInstance(classInfo.Session)); classInfo.OwnMembers.Add(persistentMemberInfo); persistentMemberInfo.SetDefaultTemplate(TemplateType.InterfaceReadWriteMember); persistentMemberInfo.CodeTemplateInfo.TemplateInfo.TemplateCode = persistentMemberInfo.CodeTemplateInfo.TemplateInfo.TemplateCode.Replace("$INTERFACENAME$", interfaceInfo.Name); persistentMemberInfo.Name = propertyInfo.Name; var info = persistentMemberInfo as IPersistentCoreTypeMemberInfo; if (info != null) { info.DataType = (DBColumnType)Enum.Parse(typeof(DBColumnType), propertyInfo.PropertyType.Name); } else { var memberInfo = persistentMemberInfo as IPersistentReferenceMemberInfo; if (memberInfo != null) { memberInfo.SetReferenceTypeFullName(propertyInfo.PropertyType.FullName); } } }
static void AddPersistentMemberInfo(IPersistentClassInfo classInfo, PropertyInfo propertyInfo, IInterfaceInfo interfaceInfo) { Type memberInfoType = GetMemberInfoType(propertyInfo.PropertyType); var persistentMemberInfo = ((IPersistentMemberInfo)ReflectionHelper.CreateObject(memberInfoType, classInfo.Session)); classInfo.OwnMembers.Add(persistentMemberInfo); persistentMemberInfo.SetDefaultTemplate(TemplateType.InterfaceReadWriteMember); persistentMemberInfo.CodeTemplateInfo.TemplateInfo.TemplateCode = persistentMemberInfo.CodeTemplateInfo.TemplateInfo.TemplateCode.Replace("$INTERFACENAME$", interfaceInfo.Name); persistentMemberInfo.Name = propertyInfo.Name; if (persistentMemberInfo is IPersistentCoreTypeMemberInfo) { ((IPersistentCoreTypeMemberInfo)persistentMemberInfo).DataType = (DBColumnType)Enum.Parse(typeof(DBColumnType), propertyInfo.PropertyType.Name); } else if (persistentMemberInfo is IPersistentReferenceMemberInfo) { ((IPersistentReferenceMemberInfo)persistentMemberInfo).SetReferenceTypeFullName(propertyInfo.PropertyType.FullName); } }