| Flutter Impeller |

Macros
thread_safety.h File Reference

Go to the source code of this file.

## Macros
#define | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(x)
#define | IPLR_CAPABILITY(x) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(capability(x))
#define | IPLR_SCOPED_CAPABILITY IPLR_THREAD_ANNOTATION_ATTRIBUTE__(scoped_lockable)
#define | IPLR_GUARDED_BY(x) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(guarded_by(x))
#define | IPLR_PT_GUARDED_BY(x) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(pt_guarded_by(x))
#define | IPLR_ACQUIRED_BEFORE(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(acquired_before(__VA_ARGS__))
#define | IPLR_ACQUIRED_AFTER(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(acquired_after(__VA_ARGS__))
#define | IPLR_REQUIRES(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(requires_capability(__VA_ARGS__))
#define | IPLR_REQUIRES_SHARED(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(requires_shared_capability(__VA_ARGS__))
#define | IPLR_ACQUIRE(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(acquire_capability(__VA_ARGS__))
#define | IPLR_ACQUIRE_SHARED(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(acquire_shared_capability(__VA_ARGS__))
#define | IPLR_RELEASE(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(release_capability(__VA_ARGS__))
#define | IPLR_RELEASE_SHARED(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(release_shared_capability(__VA_ARGS__))
#define | IPLR_RELEASE_GENERIC(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(release_generic_capability(__VA_ARGS__))
#define | IPLR_TRY_ACQUIRE(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(try_acquire_capability(__VA_ARGS__))
#define | IPLR_TRY_ACQUIRE_SHARED(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(try_acquire_shared_capability(__VA_ARGS__))
#define | IPLR_EXCLUDES(...) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(locks_excluded(__VA_ARGS__))
#define | IPLR_ASSERT_CAPABILITY(x) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(assert_capability(x))
#define | IPLR_ASSERT_SHARED_CAPABILITY(x) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(assert_shared_capability(x))
#define | IPLR_RETURN_CAPABILITY(x) IPLR_THREAD_ANNOTATION_ATTRIBUTE__(lock_returned(x))
#define | IPLR_NO_THREAD_SAFETY_ANALYSIS IPLR_THREAD_ANNOTATION_ATTRIBUTE__(no_thread_safety_analysis)

## Macro Definition Documentation

## ◆ IPLR_ACQUIRE

#define IPLR_ACQUIRE | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(acquire_capability(__VA_ARGS__))

Definition at line 36 of file thread_safety.h.

## ◆ IPLR_ACQUIRE_SHARED

#define IPLR_ACQUIRE_SHARED | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(acquire_shared_capability(__VA_ARGS__))

Definition at line 39 of file thread_safety.h.

## ◆ IPLR_ACQUIRED_AFTER

#define IPLR_ACQUIRED_AFTER | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(acquired_after(__VA_ARGS__))

Definition at line 27 of file thread_safety.h.

## ◆ IPLR_ACQUIRED_BEFORE

#define IPLR_ACQUIRED_BEFORE | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(acquired_before(__VA_ARGS__))

Definition at line 24 of file thread_safety.h.

## ◆ IPLR_ASSERT_CAPABILITY

#define IPLR_ASSERT_CAPABILITY | ( |  | x | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(assert_capability(x))

Definition at line 60 of file thread_safety.h.

## ◆ IPLR_ASSERT_SHARED_CAPABILITY

#define IPLR_ASSERT_SHARED_CAPABILITY | ( |  | x | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(assert_shared_capability(x))

Definition at line 63 of file thread_safety.h.

## ◆ IPLR_CAPABILITY

#define IPLR_CAPABILITY | ( |  | x | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(capability(x))

Definition at line 14 of file thread_safety.h.

## ◆ IPLR_EXCLUDES

#define IPLR_EXCLUDES | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(locks_excluded(__VA_ARGS__))

Definition at line 57 of file thread_safety.h.

## ◆ IPLR_GUARDED_BY

#define IPLR_GUARDED_BY | ( |  | x | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(guarded_by(x))

Definition at line 19 of file thread_safety.h.

## ◆ IPLR_NO_THREAD_SAFETY_ANALYSIS

#define IPLR_NO_THREAD_SAFETY_ANALYSIS IPLR_THREAD_ANNOTATION_ATTRIBUTE__(no_thread_safety_analysis)

Definition at line 69 of file thread_safety.h.

## ◆ IPLR_PT_GUARDED_BY

#define IPLR_PT_GUARDED_BY | ( |  | x | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(pt_guarded_by(x))

Definition at line 21 of file thread_safety.h.

## ◆ IPLR_RELEASE

#define IPLR_RELEASE | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(release_capability(__VA_ARGS__))

Definition at line 42 of file thread_safety.h.

## ◆ IPLR_RELEASE_GENERIC

#define IPLR_RELEASE_GENERIC | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(release_generic_capability(__VA_ARGS__))

Definition at line 48 of file thread_safety.h.

## ◆ IPLR_RELEASE_SHARED

#define IPLR_RELEASE_SHARED | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(release_shared_capability(__VA_ARGS__))

Definition at line 45 of file thread_safety.h.

## ◆ IPLR_REQUIRES

#define IPLR_REQUIRES | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(requires_capability(__VA_ARGS__))

Definition at line 30 of file thread_safety.h.

## ◆ IPLR_REQUIRES_SHARED

#define IPLR_REQUIRES_SHARED | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(requires_shared_capability(__VA_ARGS__))

Definition at line 33 of file thread_safety.h.

## ◆ IPLR_RETURN_CAPABILITY

#define IPLR_RETURN_CAPABILITY | ( |  | x | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(lock_returned(x))

Definition at line 66 of file thread_safety.h.

## ◆ IPLR_SCOPED_CAPABILITY

#define IPLR_SCOPED_CAPABILITY IPLR_THREAD_ANNOTATION_ATTRIBUTE__(scoped_lockable)

Definition at line 16 of file thread_safety.h.

## ◆ IPLR_THREAD_ANNOTATION_ATTRIBUTE__

#define IPLR_THREAD_ANNOTATION_ATTRIBUTE__ | ( |  | x | ) |

Definition at line 11 of file thread_safety.h.

## ◆ IPLR_TRY_ACQUIRE

#define IPLR_TRY_ACQUIRE | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(try_acquire_capability(__VA_ARGS__))

Definition at line 51 of file thread_safety.h.

## ◆ IPLR_TRY_ACQUIRE_SHARED

#define IPLR_TRY_ACQUIRE_SHARED | ( |  | ... | ) | IPLR_THREAD_ANNOTATION_ATTRIBUTE__(try_acquire_shared_capability(__VA_ARGS__))

Definition at line 54 of file thread_safety.h.