Ejemplo n.º 1
0
 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);
     }
 }
Ejemplo n.º 2
0
 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);
            }
        }
Ejemplo n.º 5
0
        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);
                }
            }
        }
Ejemplo n.º 6
0
        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);
            }
        }