@@ -54,14 +54,10 @@ protected override void GenerateCore()
5454 builderMembers . Add ( this . CreateConstructor ( ) ) ;
5555 builderMembers . AddRange ( this . CreateMutableProperties ( ) ) ;
5656 builderMembers . Add ( this . CreateToImmutableMethod ( ) ) ;
57- builderMembers . Add ( this . CreatePropertyChangedEvent ( ) ) ;
58- builderMembers . Add ( this . CreateOnPropertyChangedMethod ( ) ) ;
5957 var builderType = SyntaxFactory . ClassDeclaration ( BuilderTypeName . Identifier )
6058 . AddModifiers (
6159 SyntaxFactory . Token ( SyntaxKind . PublicKeyword ) ,
62- SyntaxFactory . Token ( SyntaxKind . PartialKeyword ) )
63- . AddBaseListTypes ( SyntaxFactory . SimpleBaseType ( INotifyPropertyChanged ) )
64- . WithMembers ( SyntaxFactory . List ( builderMembers ) ) ;
60+ SyntaxFactory . Token ( SyntaxKind . PartialKeyword ) ) ;
6561 if ( this . generator . applyToMetaType . HasAncestor )
6662 {
6763 builderType = builderType
@@ -71,6 +67,16 @@ protected override void GenerateCore()
7167 BuilderTypeName ) ) ) ) )
7268 . WithModifiers ( builderType . Modifiers . Insert ( 0 , SyntaxFactory . Token ( SyntaxKind . NewKeyword ) ) ) ;
7369 }
70+ else
71+ {
72+ builderType = builderType
73+ . AddBaseListTypes ( SyntaxFactory . SimpleBaseType ( INotifyPropertyChanged ) ) ;
74+ builderMembers . Add ( this . CreatePropertyChangedEvent ( ) ) ;
75+ builderMembers . Add ( this . CreateOnPropertyChangedMethod ( ) ) ;
76+ }
77+
78+ builderType = builderType
79+ . WithMembers ( SyntaxFactory . List ( builderMembers ) ) ;
7480
7581 this . innerMembers . Add ( builderType ) ;
7682 }
0 commit comments