IntelliTect / IntelliTect/EssentialCSharp
Ensure Primary Constructor Parameter Member Generation Coverage
- Langage dominant
- C#
- Étoiles
- 418
- Forks
- 173
- Merge moyen
- 3 min
- PR mergées (30 j)
- 3
Description
* When a primary constructor parameter is used, the compiler captures the constructor parameter in a **private field** with a compiler-generated name.
If a primary constructor parameter isn't used in the body of the type, **no private field is captured**. (That rule prevents accidentally allocating two copies of a primary constructor parameter that's passed to a base constructor.)
* If the type includes the record modifier, the compiler instead synthesizes a **public property** with the same name as the primary constructor parameter.
* For record class types, if a primary constructor parameter uses the same name as a base primary constructor, that property is a public property of the base record class type. It isn't duplicated in the derived record class type. These properties aren't generated for non-record types.
See
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par la documentation liée sur les primary constructors, puis recherchez la couverture existante du dépôt pour les paramètres des primary constructors. Vérifiez les cas de private-field capture, de champs omis, de record properties et de record properties héritées, y compris la distinction avec les non-records. La tâche est terminée lorsque chaque comportement indiqué est couvert par des tests ou des exemples et que la suite de tests concernée réussit.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- csharp
- Domaine
- testing-qa
- Type d'issue
- Fonctionnalité
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100