| 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 35 of file thread_safety.h.

## ◆ IPLR_ACQUIRE_SHARED

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

Definition at line 38 of file thread_safety.h.

## ◆ IPLR_ACQUIRED_AFTER

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

Definition at line 26 of file thread_safety.h.

## ◆ IPLR_ACQUIRED_BEFORE

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

Definition at line 23 of file thread_safety.h.

## ◆ IPLR_ASSERT_CAPABILITY

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

Definition at line 59 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 62 of file thread_safety.h.

## ◆ IPLR_CAPABILITY

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

Definition at line 13 of file thread_safety.h.

## ◆ IPLR_EXCLUDES

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

Definition at line 56 of file thread_safety.h.

## ◆ IPLR_GUARDED_BY

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

Definition at line 18 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 68 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 20 of file thread_safety.h.

## ◆ IPLR_RELEASE

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

Definition at line 41 of file thread_safety.h.

## ◆ IPLR_RELEASE_GENERIC

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

Definition at line 47 of file thread_safety.h.

## ◆ IPLR_RELEASE_SHARED

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

Definition at line 44 of file thread_safety.h.

## ◆ IPLR_REQUIRES

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

Definition at line 29 of file thread_safety.h.

## ◆ IPLR_REQUIRES_SHARED

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

Definition at line 32 of file thread_safety.h.

## ◆ IPLR_RETURN_CAPABILITY

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

Definition at line 65 of file thread_safety.h.

## ◆ IPLR_SCOPED_CAPABILITY

#define IPLR_SCOPED_CAPABILITY IPLR_THREAD_ANNOTATION_ATTRIBUTE__(scoped_lockable)

Definition at line 15 of file thread_safety.h.

## ◆ IPLR_THREAD_ANNOTATION_ATTRIBUTE__

#define IPLR_THREAD_ANNOTATION_ATTRIBUTE__ | ( |  | x | ) |

Definition at line 10 of file thread_safety.h.

## ◆ IPLR_TRY_ACQUIRE

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

Definition at line 50 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 53 of file thread_safety.h.