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

Redundant BindingFlags #744

Closed
jnyrup opened this issue Jan 27, 2018 · 5 comments · Fixed by #1575
Closed

Redundant BindingFlags #744

jnyrup opened this issue Jan 27, 2018 · 5 comments · Fixed by #1575

Comments

@jnyrup
Copy link
Member

jnyrup commented Jan 27, 2018

From TypeExtensions.cs

private const BindingFlags PublicMembersFlag =
BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance;

private const BindingFlags AllMembersFlag =
PublicMembersFlag | BindingFlags.NonPublic | BindingFlags.Static;

Note how BindingFlags.NonPublic is included in both constants.

Is that just redundant?

@dennisdoomen
Copy link
Member

No, that can be removed.

@jnyrup
Copy link
Member Author

jnyrup commented Jan 27, 2018

Come again?

@dennisdoomen
Copy link
Member

I mean the duplicate BindingFlags.NonPublic

@jnyrup
Copy link
Member Author

jnyrup commented Jan 27, 2018

I just wondered since

private static IEnumerable<PropertyInfo> GetPublicProperties(Type type)
{
    return type.GetProperties(PublicMembersFlag);
}

uses PublicMembersFlag, which includes BindingFlags.NonPublic, and hence GetPublicProperties will also return private properties.

@dennisdoomen
Copy link
Member

Sure. Just remove it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants