From 518228238b3177bb230e07d92013f1410bdc930a Mon Sep 17 00:00:00 2001 From: Gauthier Segay Date: Tue, 13 Apr 2021 13:35:07 +0200 Subject: [PATCH] bring a sentence (extracted from discussion thread) that summarizes quite well a major intended use of the feature. --- drafts/FS-1095-requirenamedargumentattribute.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drafts/FS-1095-requirenamedargumentattribute.md b/drafts/FS-1095-requirenamedargumentattribute.md index 4e46c05c..b9a8d0a1 100644 --- a/drafts/FS-1095-requirenamedargumentattribute.md +++ b/drafts/FS-1095-requirenamedargumentattribute.md @@ -22,7 +22,9 @@ This allows an API designer to enforce call sites abide to design choices in sim Applying the `RequireNamedArgument` attribute to the method definition will enforce call sites to use the named argument syntax. -This is most useful in cases where subsequent arguments of same type can be confusing or prone to introducing bugs at call sites or during refactorings. +This is useful when +* describing the domain, and wanting the developers who is working on it to mindfully notice what they are passing into the method +* subsequent arguments of same type can be confusing or prone to introducing bugs at call sites or during refactorings This impacts some type providers where the order of parameter of a type provided member may switch due to adjustment of the input provided to a type provider.