Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ensure source generated metadata properties are read-only. #76867

Conversation

eiriktsarpalis
Copy link
Member

@eiriktsarpalis eiriktsarpalis commented Oct 11, 2022

Alternative PR to #76540 which includes the full-blown freezing functionality on the type itself:

namespace System.Text.Json.Metadata;

public partial static class JsonTypeInfo
{
    public bool IsReadOnly { get; }
    public void MakeReadOnly();
}

Fixes #76535

@dotnet-issue-labeler
Copy link

Note regarding the new-api-needs-documentation label:

This serves as a reminder for when your PR is modifying a ref *.cs file and adding/modifying public APIs, to please make sure the API implementation in the src *.cs file is documented with triple slash comments, so the PR reviewers can sign off that change.

@ghost ghost assigned eiriktsarpalis Oct 11, 2022
@eiriktsarpalis eiriktsarpalis added this to the 8.0.0 milestone Oct 11, 2022
@ghost
Copy link

ghost commented Oct 11, 2022

Tagging subscribers to this area: @dotnet/area-system-text-json, @gregsdennis
See info in area-owners.md if you want to be subscribed.

Issue Details

Alternative PR to #76540 which includes the full-blown freezing functionality on the type itself:

namespace System.Text.Json.Metadata;

public partial static class JsonTypeInfo
{
    public bool IsReadOnly { get; }
    public void MakeReadOnly();
}
Author: eiriktsarpalis
Assignees: -
Labels:

area-System.Text.Json, new-api-needs-documentation

Milestone: -

@ghost ghost locked as resolved and limited conversation to collaborators Nov 11, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Contract metadata cached by the source generator are user-modifiable.
2 participants