public virtual bool IsTheSame(BaseConstruct comparisonObject, ComparisonDepth depth) { if (Name != comparisonObject.Name) { ComparisonDifference += comparisonObject.GetType().Name + ".Name"; return(false); } if (depth == ComparisonDepth.Signature) { return(true); } Comparers.BaseConstructComparer comparer = new Comparers.BaseConstructComparer(); if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(_Attributes.ToArray(), comparisonObject._Attributes.ToArray(), comparer)) { ComparisonDifference += comparisonObject.GetType().Name + ".Attributes"; return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.StringCollectionsAreTheSame(XmlComments, comparisonObject.XmlComments)) { ComparisonDifference += comparisonObject.GetType().Name + ".XmlComments"; return(false); } if (Comments.IsTheSame(comparisonObject.Comments) == false) { ComparisonDifference += comparisonObject.GetType().Name + ".Comments"; return(false); } return(true); }
private bool IsTheSame(Interface comparisonInterface, ComparisonDepth depth) { if (comparisonInterface == null) { return(false); } if (Name == comparisonInterface.Name) { if (depth == ComparisonDepth.Signature) { return(true); } if (!base.IsTheSame(comparisonInterface, depth)) { return(false); } if (!Utility.StringCollectionsAreTheSame(Modifiers, comparisonInterface.Modifiers)) { ComparisonDifference += GetType().Name + ".Modifiers"; return(false); } if (depth == ComparisonDepth.Outer) { return(true); } // Now check all child objects Comparers.BaseConstructComparer comparer = new Comparers.BaseConstructComparer(); if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Events.ToArray(), comparisonInterface.Events.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Events"; return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Indexers.ToArray(), comparisonInterface.Indexers.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Indexers"; return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Methods.ToArray(), comparisonInterface.Methods.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Methods"; return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Properties.ToArray(), comparisonInterface.Properties.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Properties"; return(false); } return(true); } return(false); }
private bool IsTheSame(Enumeration comparisonEnum, ComparisonDepth depth) { if (comparisonEnum == null) { return(false); } if (Name == comparisonEnum.Name) { if ((ParentObject == null && comparisonEnum.ParentObject == null) || (ParentObject.GetType() == comparisonEnum.ParentObject.GetType() && ParentObject.Name == comparisonEnum.ParentObject.Name)) { if (depth == ComparisonDepth.Signature) { return(true); } if (!base.IsTheSame(comparisonEnum, depth)) { return(false); } if (!Utility.StringCollectionsAreTheSame(Modifiers, comparisonEnum.Modifiers)) { ComparisonDifference += GetType().Name + ".Modifiers"; return(false); } if (depth == ComparisonDepth.Outer) { return(true); } // Now check all child objects Comparers.BaseConstructComparer comparer = new Comparers.BaseConstructComparer(); if (EnumBase != comparisonEnum.EnumBase) { return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Members.ToArray(), comparisonEnum.Members.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Members"; return(false); } return(true); } } return(false); }
private bool IsTheSame(AttributeSection comparisonAttribute, ComparisonDepth depth) { if (comparisonAttribute == null) { return(false); } if (Name == comparisonAttribute.Name && singleAttributes.Count == comparisonAttribute.singleAttributes.Count) { Comparers.BaseConstructComparer comparer = new Comparers.BaseConstructComparer(); if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(singleAttributes.ToArray(), comparisonAttribute.singleAttributes.ToArray(), comparer, depth)) { ComparisonDifference += GetType().Name + ".SingleAttributes"; return(false); } if (depth == ComparisonDepth.Signature) { return(true); } if (!base.IsTheSame(comparisonAttribute, depth)) { return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Attributes.ToArray(), comparisonAttribute.Attributes.ToArray())) { ComparisonDifference += GetType().Name + ".Attributes"; return(false); } return(true); } return(false); }
private bool IsTheSame(AttributeSection comparisonAttribute, ComparisonDepth depth) { if (comparisonAttribute == null) return false; if (Name == comparisonAttribute.Name && singleAttributes.Count == comparisonAttribute.singleAttributes.Count) { Comparers.BaseConstructComparer comparer = new Comparers.BaseConstructComparer(); if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(singleAttributes.ToArray(), comparisonAttribute.singleAttributes.ToArray(), comparer, depth)) { ComparisonDifference += GetType().Name + ".SingleAttributes"; return false; } if (depth == ComparisonDepth.Signature) { return true; } if (!base.IsTheSame(comparisonAttribute, depth)) { return false; } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Attributes.ToArray(), comparisonAttribute.Attributes.ToArray())) { ComparisonDifference += GetType().Name + ".Attributes"; return false; } return true; } return false; }
private bool IsTheSame(Namespace comparisonNamespace, ComparisonDepth depth) { if (comparisonNamespace == null) { return(false); } if (Name == comparisonNamespace.Name) { if (depth == ComparisonDepth.Signature) { return(true); } if (!base.IsTheSame(comparisonNamespace, depth)) { return(false); } if (depth == ComparisonDepth.Outer) { return(true); } if (!Utility.CollectionsAreTheSame(UsingStatements, comparisonNamespace.UsingStatements, new Comparers.UsingStatementComparer())) { ComparisonDifference += GetType().Name + ".UsingStatements"; return(false); } Comparers.BaseConstructComparer comparer = new Comparers.BaseConstructComparer(); if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Classes.ToArray(), comparisonNamespace.Classes.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Classes"; return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Structs.ToArray(), comparisonNamespace.Structs.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Structs"; return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Interfaces.ToArray(), comparisonNamespace.Interfaces.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Interfaces"; return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Enums.ToArray(), comparisonNamespace.Enums.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Enums"; return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Delegates.ToArray(), comparisonNamespace.Delegates.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Delegates"; return(false); } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(InnerNamespaces.ToArray(), comparisonNamespace.InnerNamespaces.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Namespaces"; return(false); } return(true); } return(false); }
private bool IsTheSame(Enumeration comparisonEnum, ComparisonDepth depth) { if (comparisonEnum == null) return false; if (Name == comparisonEnum.Name) { if ((ParentObject == null && comparisonEnum.ParentObject == null) || (ParentObject.GetType() == comparisonEnum.ParentObject.GetType() && ParentObject.Name == comparisonEnum.ParentObject.Name)) { if (depth == ComparisonDepth.Signature) { return true; } if (!base.IsTheSame(comparisonEnum, depth)) { return false; } if (!Utility.StringCollectionsAreTheSame(Modifiers, comparisonEnum.Modifiers)) { ComparisonDifference += GetType().Name + ".Modifiers"; return false; } if (depth == ComparisonDepth.Outer) { return true; } // Now check all child objects Comparers.BaseConstructComparer comparer = new Comparers.BaseConstructComparer(); if (EnumBase != comparisonEnum.EnumBase) { return false; } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Members.ToArray(), comparisonEnum.Members.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Members"; return false; } return true; } } return false; }
private bool IsTheSame(Interface comparisonInterface, ComparisonDepth depth) { if (comparisonInterface == null) return false; if (Name == comparisonInterface.Name) { if (depth == ComparisonDepth.Signature) { return true; } if (!base.IsTheSame(comparisonInterface, depth)) { return false; } if (!Utility.StringCollectionsAreTheSame(Modifiers, comparisonInterface.Modifiers)) { ComparisonDifference += GetType().Name + ".Modifiers"; return false; } if (depth == ComparisonDepth.Outer) { return true; } // Now check all child objects Comparers.BaseConstructComparer comparer = new Comparers.BaseConstructComparer(); if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Events.ToArray(), comparisonInterface.Events.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Events"; return false; } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Indexers.ToArray(), comparisonInterface.Indexers.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Indexers"; return false; } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Methods.ToArray(), comparisonInterface.Methods.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Methods"; return false; } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Properties.ToArray(), comparisonInterface.Properties.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Properties"; return false; } return true; } return false; }
private bool IsTheSame(Namespace comparisonNamespace, ComparisonDepth depth) { if (comparisonNamespace == null) return false; if (Name == comparisonNamespace.Name) { if (depth == ComparisonDepth.Signature) { return true; } if (!base.IsTheSame(comparisonNamespace, depth)) { return false; } if (depth == ComparisonDepth.Outer) { return true; } if (!Utility.CollectionsAreTheSame(UsingStatements, comparisonNamespace.UsingStatements, new Comparers.UsingStatementComparer())) { ComparisonDifference += GetType().Name + ".UsingStatements"; return false; } Comparers.BaseConstructComparer comparer = new Comparers.BaseConstructComparer(); if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Classes.ToArray(), comparisonNamespace.Classes.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Classes"; return false; } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Structs.ToArray(), comparisonNamespace.Structs.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Structs"; return false; } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Interfaces.ToArray(), comparisonNamespace.Interfaces.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Interfaces"; return false; } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Enums.ToArray(), comparisonNamespace.Enums.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Enums"; return false; } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(Delegates.ToArray(), comparisonNamespace.Delegates.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Delegates"; return false; } if (!ArchAngel.Providers.CodeProvider.CSharp.Utility.BaseContructCollectionsAreTheSame(InnerNamespaces.ToArray(), comparisonNamespace.InnerNamespaces.ToArray(), comparer)) { ComparisonDifference += GetType().Name + ".Namespaces"; return false; } return true; } return false; }