Flutter Engine
The Flutter Engine
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.