internal InternalPartialClassMethodCollectionWithCodeAnalysis(InternalClassTypeWithCodeAnalysis <TClass> classType)
 {
     this.classType = classType;
     methods        = new ClassMethodListWrapper <TClass, ClassMethodWithCodeAnalysis>(
         classType.InternalNode,
         () => new ClassMethodWithCodeAnalysis(),
         syntax => syntax.ExplicitInterfaceSpecifier == null && !syntax.Modifiers.IsAbstract() && !syntax.IsPartial());
     partialMethodDefinitions = new ClassMethodListWrapper <TClass, PartialMethodDefinitionWithCodeAnalysis>(
         classType.InternalNode,
         () => new PartialMethodDefinitionWithCodeAnalysis(),
         syntax => syntax.IsPartial() && syntax.Body == null);
     partialMethodImplementations = new ClassMethodListWrapper <TClass, PartialMethodImplementationWithCodeAnalysis>(
         classType.InternalNode,
         () => new PartialMethodImplementationWithCodeAnalysis(),
         syntax => syntax.IsPartial() && syntax.Body != null);
     classType.Members.AddClassPartialMethods(this);
 }
 internal InternalNestedStaticPartialClassMethodCollectionWithCodeAnalysis(
     InternalNestedStaticPartialClassWithCodeAnalysis <TStaticClass> classType)
 {
     this.classType = classType;
     methods        = new ClassMethodListWrapper <TStaticClass, NestedStaticClassMethodWithCodeAnalysis>(
         classType.InternalNode,
         () => new NestedStaticClassMethodWithCodeAnalysis(),
         syntax => !syntax.IsPartial());
     partialMethodDefinitions = new ClassMethodListWrapper <TStaticClass, PartialMethodDefinitionWithCodeAnalysis>(
         classType.InternalNode,
         () => new PartialMethodDefinitionWithCodeAnalysis(),
         syntax => syntax.IsPartial() && syntax.Body == null);
     partialMethodImplementations = new ClassMethodListWrapper <TStaticClass, PartialMethodImplementationWithCodeAnalysis>(
         classType.InternalNode,
         () => new PartialMethodImplementationWithCodeAnalysis(),
         syntax => syntax.IsPartial() && syntax.Body != null);
 }