Skip to content

Commit

Permalink
add getters to make C# named arguments work
Browse files Browse the repository at this point in the history
  • Loading branch information
dharmaturtle committed Jun 27, 2023
1 parent d242e6b commit b3c7b02
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 10 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Changelog

### Next

* Named arguments work for `Property` and `Properties` in C#

### 0.5.2 (2023-01-13)

* Reduced Xunit dependencies to Xunit.Core
Expand Down
20 changes: 10 additions & 10 deletions src/Hedgehog.Xunit/Attributes.fs
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,11 @@ type PropertyAttribute(autoGenConfig, autoGenConfigArgs, tests, shrinks, size) =
/// let myTest (i:int) = ...
///
/// ```
member _.AutoGenConfig with set v = _autoGenConfig <- Some v
member _.AutoGenConfigArgs with set v = _autoGenConfigArgs <- Some v
member _.Tests with set v = _tests <- Some v
member _.Shrinks with set v = _shrinks <- Some v
member _.Size with set v = _size <- Some v
member _.AutoGenConfig with set v = _autoGenConfig <- Some v and get ():Type = failwith "this getter only exists to make C# named arguments work"
member _.AutoGenConfigArgs with set v = _autoGenConfigArgs <- Some v and get ():obj array = failwith "this getter only exists to make C# named arguments work"
member _.Tests with set v = _tests <- Some v and get ():int<tests> = failwith "this getter only exists to make C# named arguments work"
member _.Shrinks with set v = _shrinks <- Some v and get ():int<shrinks> = failwith "this getter only exists to make C# named arguments work"
member _.Size with set v = _size <- Some v and get ():Size = failwith "this getter only exists to make C# named arguments work"
member internal _.GetAutoGenConfig = _autoGenConfig
member internal _.GetAutoGenConfigArgs = _autoGenConfigArgs
member internal _.GetTests = _tests
Expand Down Expand Up @@ -81,11 +81,11 @@ type PropertiesAttribute(autoGenConfig, autoGenConfigArgs, tests, shrinks, size)
/// let myTest (i:int) = ...
///
/// ```
member _.AutoGenConfig with set v = _autoGenConfig <- Some v
member _.AutoGenConfigArgs with set v = _autoGenConfigArgs <- Some v
member _.Tests with set v = _tests <- Some v
member _.Shrinks with set v = _shrinks <- Some v
member _.Size with set v = _size <- Some v
member _.AutoGenConfig with set v = _autoGenConfig <- Some v and get ():Type = failwith "this getter only exists to make C# named arguments work"
member _.AutoGenConfigArgs with set v = _autoGenConfigArgs <- Some v and get ():obj array = failwith "this getter only exists to make C# named arguments work"
member _.Tests with set v = _tests <- Some v and get ():int<tests> = failwith "this getter only exists to make C# named arguments work"
member _.Shrinks with set v = _shrinks <- Some v and get ():int<shrinks> = failwith "this getter only exists to make C# named arguments work"
member _.Size with set v = _size <- Some v and get ():Size = failwith "this getter only exists to make C# named arguments work"
member internal _.GetAutoGenConfig = _autoGenConfig
member internal _.GetAutoGenConfigArgs = _autoGenConfigArgs
member internal _.GetTests = _tests
Expand Down

0 comments on commit b3c7b02

Please sign in to comment.