internal InternalStaticClassEventCollectionWithCodeAnalysis(InternalStaticTypeWithCodeAnalysis <TClass> type) { this.type = type; events = new ClassMemberListWrapper <TClass, StaticClassEventWithCodeAnalysis, EventFieldDeclarationSyntax>( type.InternalNode, () => new StaticClassEventWithCodeAnalysis()); eventProperties = new ClassMemberListWrapper <TClass, StaticClassEventPropertyWithCodeAnalysis, EventDeclarationSyntax>( type.InternalNode, () => new StaticClassEventPropertyWithCodeAnalysis()); }
internal InternalStaticClassNestedStructCollectionWithCodeAnalysis( InternalStaticTypeWithCodeAnalysis <TClass> type) { this.type = type; structs = new ClassMemberListWrapper <TClass, StaticClassNestedStructWithCodeAnalysis, StructDeclarationSyntax>( type.InternalNode, () => new StaticClassNestedStructWithCodeAnalysis()); partialStructs = new ClassMemberListWrapper <TClass, StaticClassNestedPartialStructWithCodeAnalysis, StructDeclarationSyntax>( type.InternalNode, () => new StaticClassNestedPartialStructWithCodeAnalysis()); }
internal InternalStaticClassFieldCollectionWithCodeAnalysis(InternalStaticTypeWithCodeAnalysis <TClass> type) { this.type = type; constants = new ClassMemberListWrapper <TClass, StaticClassConstantWithCodeAnalysis, FieldDeclarationSyntax>( type.InternalNode, () => new StaticClassConstantWithCodeAnalysis(), syntax => syntax.IsConstant()); fields = new ClassMemberListWrapper <TClass, StaticClassFieldWithCodeAnalysis, FieldDeclarationSyntax>( type.InternalNode, () => new StaticClassFieldWithCodeAnalysis(), syntax => !syntax.IsConstant()); }
internal InternalStaticClassMethodCollectionWithCodeAnalysis(InternalStaticTypeWithCodeAnalysis <TClass> type) { this.type = type; methods = new ClassMemberListWrapper <TClass, StaticClassMethodWithCodeAnalysis, MethodDeclarationSyntax>( type.InternalNode, () => new StaticClassMethodWithCodeAnalysis(), syntax => !IsExtensionMethod(syntax)); extensionMethods = new ClassMemberListWrapper <TClass, ExtensionMethodWithCodeAnalysis, MethodDeclarationSyntax>( type.InternalNode, () => new ExtensionMethodWithCodeAnalysis(), IsExtensionMethod); }
internal InternalStaticClassPropertyCollectionWithCodeAnalysis(InternalStaticTypeWithCodeAnalysis <TClass> classType) { this.classType = classType; properties = new ClassPropertyListWrapper <TClass, StaticClassPropertyWithCodeAnalysis>( classType.InternalNode, () => new StaticClassPropertyWithCodeAnalysis(), syntax => syntax.IsProperty()); autoProperties = new ClassPropertyListWrapper <TClass, StaticClassAutoPropertyWithCodeAnalysis>( classType.InternalNode, () => new StaticClassAutoPropertyWithCodeAnalysis(), syntax => syntax.IsAutoProperty()); lambdaProperties = new ClassPropertyListWrapper <TClass, StaticClassLambdaPropertyWithCodeAnalysis>( classType.InternalNode, () => new StaticClassLambdaPropertyWithCodeAnalysis(), syntax => syntax.IsLambdaProperty()); }
internal InternalStaticClassNestedClassCollectionWithCodeAnalysis( InternalStaticTypeWithCodeAnalysis <TClass> type) { this.type = type; classes = new ClassMemberListWrapper <TClass, StaticClassNestedClassWithCodeAnalysis, ClassDeclarationSyntax>( type.InternalNode, () => new StaticClassNestedClassWithCodeAnalysis(), ClassDeclarationSyntaxExtensions.IsClass); abstractClasses = new ClassMemberListWrapper <TClass, StaticClassNestedAbstractClassWithCodeAnalysis, ClassDeclarationSyntax>( type.InternalNode, () => new StaticClassNestedAbstractClassWithCodeAnalysis(), ClassDeclarationSyntaxExtensions.IsAbstractClass); sealedClasses = new ClassMemberListWrapper <TClass, StaticClassNestedSealedClassWithCodeAnalysis, ClassDeclarationSyntax>( type.InternalNode, () => new StaticClassNestedSealedClassWithCodeAnalysis(), ClassDeclarationSyntaxExtensions.IsSealedClass); staticClasses = new ClassMemberListWrapper <TClass, StaticClassNestedStaticClassWithCodeAnalysis, ClassDeclarationSyntax>( type.InternalNode, () => new StaticClassNestedStaticClassWithCodeAnalysis(), ClassDeclarationSyntaxExtensions.IsStaticClass); partialClasses = StaticClassNestedPartialClassCollectionWithCodeAnalysis.Create(type); }