Table of contents
Collapse the table of content
Expand the table of content

Patterns.PropertySet Active Pattern (F#)

Den Delimarsky|Last Updated: 8/18/2017
1 Contributor

Recognizes expressions that represent setting a static or instance property, or setting a non-function value declared in a module.

Namespace/Module Path: Microsoft.FSharp.Quotations.Patterns

Assembly: FSharp.Core (in FSharp.Core.dll)


// Signature:
( |PropertySet|_| ) : (input:Expr) -> (Expr option * PropertyInfo * Expr list * Expr) option


input Type: Expr

The input expression to match against.

Return Value

The formal return value is (Expr option * PropertyInfo * Expr list * Expr) option. The option type indicates whether the input results in a match. In a pattern matching expression, the input is decomposed, upon a successful match, into a tuple of four elements. The first element is an option whose value is an expression that represents the instance, or None if the property is static. The second element is a System.Reflection.PropertyInfo object that represents the property (or the module value). The third element is an expression list that represents the arguments to the set accessor, which is used for indexed properties. The fourth element is an expression that represents the value to set, which is also the right side of the assignment.


This function is named PropertySetPattern in the .NET Framework assembly. If you are accessing the member from a .NET Framework language other than F#, or through reflection, use this name.


Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Version Information

F# Core Library Versions

Supported in: 2.0, 4.0, Portable

See Also

Quotations.Patterns Module (F#)

Microsoft.FSharp.Quotations Namespace (F#)

© 2020 Microsoft