Class LrRecursionGuard

This class provides a simple recursion guard for function execution. The typical case for using this is to prevent a chain of observation handlers from triggering infinite recursion.

Summary

Creates a new recursion guard.
Calls a function, but only if we are not already inside a call that has been guarded by this guard.
(Boolean) True if this recursion guard is currently active; that is, currently inside a call to recursionGuard:performWithGuard().

Functions

LrRecursionGuard( name )
Creates a new recursion guard.

First supported in version 2.0 of the Lightroom SDK.

Parameters

1. name
(optional, string) A name for this recursion guard, used only for debugging.

Return value

A recursionGuard object.
recursionGuard:performWithGuard( func, ... )
Calls a function, but only if we are not already inside a call that has been guarded by this guard. If recursionGuard.active == true, does nothing.

First supported in version 2.0 of the Lightroom SDK.

Parameters

1. func
(function) The function to call.
2. ...
Any additional parameters are passed through to the function being called.

Properties

recursionGuard.active : (Read-Only)
(Boolean) True if this recursion guard is currently active; that is, currently inside a call to recursionGuard:performWithGuard().

First supported in version 2.0 of the Lightroom SDK.