static Task<Document> CreateAndInitialiseReadOnlyAutoPropertyFromConstructorParameter(ConstructorParameterContext context) { var trackedRoot = context.Root.TrackNodes(context.Constructor); var rootWithNewProperty = AddBefore( root: trackedRoot, loationToAddBefore: context.Constructor, nodeToAdd: CreateAutoProperty( type: context.Type, identifier: context.PropertyName, accessors: GetAccessor(), accessibility: SyntaxKind.PublicKeyword)); var rootWithAssignmentAndProperty = AddStatementToConstructorBody( root: rootWithNewProperty, constructor: context.Constructor, statement: CreateAssignmentStatement( leftHandSidePropertyName: context.PropertyName, rightHandSidePropertyName: context.ParameterName)); return Task.FromResult(context.Document.WithSyntaxRoot(rootWithAssignmentAndProperty)); }
static Task <Document> CreateAndInitialiseAutoPropertyFromConstructorParameter(ConstructorParameterContext context) { var trackedRoot = context.Root.TrackNodes(context.Constructor); var rootWithNewProperty = AddBefore( root: trackedRoot, loationToAddBefore: context.Constructor, nodeToAdd: CreateAutoProperty( type: context.Type, identifier: context.PropertyName, accessors: GetAndSetAccessors(), accessibility: SyntaxKind.PublicKeyword)); var rootWithAssignmentAndProperty = AddStatementToConstructorBody( root: rootWithNewProperty, constructor: context.Constructor, statement: CreateAssignmentStatement( leftHandSidePropertyName: context.PropertyName, rightHandSidePropertyName: context.ParameterName)); return(Task.FromResult(context.Document.WithSyntaxRoot(rootWithAssignmentAndProperty))); }