| Flutter Impeller |

Public Types | Public Member Functions | Public Attributes | List of all members
impeller::android::AndroidProc< T > Struct Template Reference

`#include <proc_table.h>`

## Public Types
using | AndroidProcType = T

## Public Member Functions
constexpr bool | IsAvailable () const
constexpr | operator bool () const
template<class... Args>
auto | operator() (Args &&... args) const
void | Reset ()

## Public Attributes
const char * | proc_name = nullptr
AndroidProcType * | proc = nullptr

## Detailed Description

### template<class T>
struct impeller::android::AndroidProc< T >

Definition at line 68 of file proc_table.h.

## Member Typedef Documentation

## ◆ AndroidProcType

template<class T >

using impeller::android::AndroidProc< T >::AndroidProcType = T

Definition at line 69 of file proc_table.h.

## Member Function Documentation

## ◆ IsAvailable()

template<class T >

constexpr bool impeller::android::AndroidProc< T >::IsAvailable | ( |  | ) | const
| inline constexpr

Definition at line 75 of file proc_table.h.

75 { return proc != nullptr; }

References impeller::android::AndroidProc< T >::proc.

Referenced by impeller::android::AndroidProc< T >::operator bool(), and impeller::android::AndroidProc< T >::operator()().

## ◆ operator bool()

template<class T >

constexpr impeller::android::AndroidProc< T >::operator bool | ( |  | ) | const
| inline explicit constexpr

Definition at line 77 of file proc_table.h.

77 { return IsAvailable(); }

References impeller::android::AndroidProc< T >::IsAvailable().

## ◆ operator()()

template<class T >
template<class... Args>

auto impeller::android::AndroidProc< T >::operator() | ( | Args &&... | args | ) | const
| inline

Definition at line 80 of file proc_table.h.

80 {
81 FML_DCHECK(IsAvailable())
82 << "Android method " << proc_name
83 << " is not available on this device. Missing check.";
84 return proc(std::forward<Args>(args)...);
85 }

References impeller::android::AndroidProc< T >::IsAvailable(), impeller::android::AndroidProc< T >::proc, and impeller::android::AndroidProc< T >::proc_name.

## ◆ Reset()

template<class T >

void impeller::android::AndroidProc< T >::Reset | ( |  | ) |
| inline

Definition at line 87 of file proc_table.h.

87 { proc = nullptr; }

References impeller::android::AndroidProc< T >::proc.

## Member Data Documentation

## ◆ proc

template<class T >

AndroidProcType* impeller::android::AndroidProc< T >::proc = nullptr

Definition at line 73 of file proc_table.h.

Referenced by impeller::android::AndroidProc< T >::IsAvailable(), impeller::android::AndroidProc< T >::operator()(), impeller::android::AndroidProc< T >::Reset(), and impeller::android::ResolveAndroidProc().

## ◆ proc_name

template<class T >

const char* impeller::android::AndroidProc< T >::proc_name = nullptr

Definition at line 71 of file proc_table.h.

Referenced by impeller::android::AndroidProc< T >::operator()(), and impeller::android::ResolveAndroidProc().

The documentation for this struct was generated from the following file:

- impeller/toolkit/android/proc_table.h

impeller::android::AndroidProc::proc_name
const char * proc_name
Definition: proc_table.h:71
impeller::android::AndroidProc::IsAvailable
constexpr bool IsAvailable() const
Definition: proc_table.h:75
impeller::android::AndroidProc::proc
AndroidProcType * proc
Definition: proc_table.h:73