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

Quotations.Patterns Module (F#)

Den Delimarsky|Last Updated: 7/25/2016
|
1 Contributor

Contains a set of primitive F# active patterns to analyze F# expression objects.

Namespace/Module Path: Microsoft.FSharp.Quotations

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

Syntax

module Patterns

Active Patterns

Active PatternDescription
AddressOf
: Expr -> Expr option
Recognizes expressions that represent getting the address of a value.
AddressSet
: Expr -> (Expr * Expr) option
Recognizes expressions that represent setting the value held at an address .
Application
: Expr -> (Expr * Expr) option
Recognizes expressions that represent applications of first class function values.
Call
: Expr -> (Expr option * MethodInfo * Expr list) option
Recognizes expressions that represent calls to static and instance methods, and functions defined in modules.
Coerce
: Expr -> (Expr * Type) option
Recognizes expressions that represent coercions from one type to another.
DefaultValue
: Expr -> Type option
Recognizes expressions that represent invocations of a default constructor of a structure.
FieldGet
: Expr -> (Expr option * FieldInfo)
Recognizes expressions that represent getting a static or instance field.
FieldSet
: Expr -> (Expr option * FieldInfo * Expr) option
Recognizes expressions that represent setting a static or instance field.
ForIntegerRangeLoop
: Expr -> (Var * Expr * Expr * Expr) option
Recognizes expressions that represent loops over integer ranges.
IfThenElse
: Expr -> (Expr * Expr * Expr) option
Recognizes expressions that represent conditionals.
Lambda
: Expr -> (Var * Expr) option
Recognizes expressions that represent first class function values.
LetRecursive
: Expr -> ((Var * Expr) list * Expr) option
Recognizes expressions that represent recursive let bindings of one or more variables.
Let
: Expr -> (Var * Expr * Expr) option
Recognizes expressions that represent let bindings.
NewArray
: Expr -> (Type * Expr list) option
Recognizes expressions that represent the construction of arrays.
NewDelegate
: Expr -> (Type * Var list * Expr) option
Recognizes expressions that represent construction of delegate values.
NewObject
: Expr -> (ConstructorInfo * Expr list) option
Recognizes expressions that represent invocation of object constructors.
NewRecord
: Expr -> (Type * Expr list) option
Recognizes expressions that represent construction of record values.
NewTuple
: Expr -> (Expr list) option
Recognizes expressions that represent construction of tuple values.
NewUnionCase
: Expr -> (UnionCaseInfo * Expr list) option
Recognizes expressions that represent construction of particular union case values.
PropertyGet
: Expr -> (Expr option * PropertyInfo * Expr list) option
Recognizes expressions that represent the read of a static or instance property, or a non-function value declared in a module.
PropertySet
: Expr -> (Expr option * PropertyInfo * Expr list * Expr) option
Recognizes expressions that represent setting a static or instance property, or a non-function value declared in a module.
Quote
: Expr -> Expr option
Recognizes expressions that represent a nested quotation literal.
Sequential
: Expr -> (Expr * Expr) option
Recognizes expressions that represent sequential execution of one expression followed by another.
TryFinally
: Expr -> (Expr * Expr) option
Recognizes expressions that represent a try...finally construct.
TryWith
: Expr -> (Expr * Var * Expr * Var * Expr) option
Recognizes expressions that represent a try...with construct for exception filtering and catching.
TupleGet
: Expr -> (Expr * int) option
Recognizes expressions that represent getting a tuple field.
TypeTest
: Expr -> (Expr * Type) option
Recognizes expressions that represent a dynamic type test.
UnionCaseTest
: Expr -> (Expr * UnionCaseInfo) option
Recognizes expressions that represent a test if a value is of a particular union case.
Value
: Expr -> (obj * Type) option
Recognizes expressions that represent a constant value.
VarSet
: Expr -> (Var * Expr) option
Recognizes expressions that represent setting a mutable variable.
Var
: Expr -> Var option
Recognizes expressions that represent a variable.
WhileLoop
`: Expr -> (Expr * Expr) option**
Recognizes expressions that represent while loops.

Platforms

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

Microsoft.FSharp.Quotations Namespace (F#)

© 2017 Microsoft