Skip to content

Latest commit

 

History

History
34 lines (26 loc) · 1.95 KB

File metadata and controls

34 lines (26 loc) · 1.95 KB
title description keywords author manager ms.date ms.topic ms.prod ms.technology ms.assetid
Exception Handling (F#)
Exception Handling (F#)
visual f#, f#, functional programming
dend
danielfe
05/16/2016
language-reference
visual-studio-dev14
devlang-fsharp
ad475c4a-d94e-47d9-b27b-3ff000b65f8e

Exception Handling

This section contains information about exception handling support in the F# language.

Exception Handling Basics

Exception handling is the standard way of handling error conditions in the .NET Framework. Thus, any .NET language must support this mechanism, including F#. An exception is an object that encapsulates information about an error. When errors occur, exceptions are raised and regular execution stops. Instead, the runtime searches for an appropriate handler for the exception. The search starts in the current function, and proceeds up the stack through the layers of callers until a matching handler is found. Then the handler is executed.

In addition, as the stack is unwound, the runtime executes any code in finally blocks, to guarantee that objects are cleaned up correctly during the unwinding process.

Related Topics

Title Description
Exception Types Describes how to declare an exception type.
Exceptions: The try...with Expression Describes the language construct that supports exception handling.
Exceptions: The try...finally Expression Describes the language construct that enables you to execute clean-up code as the stack unwinds when an exception is thrown.
Exceptions: the raise Function Describes how to throw an exception object.
Exceptions: The failwith Function Describes how to generate a general F# exception.
Exceptions: The invalidArg Function Describes how to generate an invalid argument exception.