Android-cuttlefish cvd tool
Public Member Functions | Public Attributes | Private Attributes | List of all members
cuttlefish::GenericCommandSource< Fn, R, Args > Class Template Reference

#include <auto_cmd.h>

Inheritance diagram for cuttlefish::GenericCommandSource< Fn, R, Args >:
Inheritance graph
[legend]
Collaboration diagram for cuttlefish::GenericCommandSource< Fn, R, Args >:
Collaboration graph
[legend]

Public Member Functions

if constexpr (std::is_same_v< R, Result< std::vector< MonitorCommand > > >)
 
else if constexpr (std::is_same_v< R, std::vector< MonitorCommand > >)
 
else if constexpr (std::is_same_v< R, Result< MonitorCommand > >)
 
else if constexpr (std::is_same_v< R, MonitorCommand >)
 
else if constexpr (std::is_same_v< R, Result< std::optional< MonitorCommand > > >)
 
else if constexpr (std::is_same_v< R, std::optional< MonitorCommand > >)
 
std::string Name () const override
 
std::unordered_set< SetupFeature * > Dependencies () const override
 
Result< std::vector< MonitorCommand > > Commands () override
 
- Public Member Functions inherited from cuttlefish::CommandSource
virtual ~CommandSource ()=default
 
virtual Result< std::vector< MonitorCommand > > Commands ()=0
 
- Public Member Functions inherited from cuttlefish::SetupFeature
virtual ~SetupFeature ()
 
virtual bool Enabled () const
 
- Public Member Functions inherited from cuttlefish::Feature< SetupFeature >
virtual ~Feature ()=default
 
virtual std::string Name () const=0
 

Public Attributes

 __pad0__: args_(std::forward_as_tuple(args...)) {} Result<void> ResultSetup() override { commands_.clear()
 
 else
 
 return {}
 

Private Attributes

std::tuple< Args... > args_
 
std::vector< MonitorCommandcommands_
 

Additional Inherited Members

- Static Public Member Functions inherited from cuttlefish::SetupFeature
static Result< void > RunSetup (const std::vector< SetupFeature * > &features)
 
- Static Public Member Functions inherited from cuttlefish::Feature< SetupFeature >
static Result< void > TopologicalVisit (const std::unordered_set< SetupFeature * > &features, const std::function< Result< void >(SetupFeature *)> &callback)
 

Member Function Documentation

◆ Commands()

template<auto Fn, typename R , typename... Args>
Result< std::vector< MonitorCommand > > cuttlefish::GenericCommandSource< Fn, R, Args >::Commands ( )
inlineoverridevirtual

◆ constexpr() [1/6]

template<auto Fn, typename R , typename... Args>
else if cuttlefish::GenericCommandSource< Fn, R, Args >::constexpr ( std::is_same_v< R, MonitorCommand )
inlineconstexpr

◆ constexpr() [2/6]

template<auto Fn, typename R , typename... Args>
else if cuttlefish::GenericCommandSource< Fn, R, Args >::constexpr ( std::is_same_v< R, Result< MonitorCommand > >  )
inlineconstexpr

◆ constexpr() [3/6]

template<auto Fn, typename R , typename... Args>
else if cuttlefish::GenericCommandSource< Fn, R, Args >::constexpr ( std::is_same_v< R, Result< std::optional< MonitorCommand > > >  )
inlineconstexpr

◆ constexpr() [4/6]

template<auto Fn, typename R , typename... Args>
if cuttlefish::GenericCommandSource< Fn, R, Args >::constexpr ( std::is_same_v< R, Result< std::vector< MonitorCommand > > >  )
inlineconstexpr

◆ constexpr() [5/6]

template<auto Fn, typename R , typename... Args>
else if cuttlefish::GenericCommandSource< Fn, R, Args >::constexpr ( std::is_same_v< R, std::optional< MonitorCommand > >  )
inlineconstexpr

◆ constexpr() [6/6]

template<auto Fn, typename R , typename... Args>
else if cuttlefish::GenericCommandSource< Fn, R, Args >::constexpr ( std::is_same_v< R, std::vector< MonitorCommand > >  )
inlineconstexpr

◆ Dependencies()

template<auto Fn, typename R , typename... Args>
std::unordered_set< SetupFeature * > cuttlefish::GenericCommandSource< Fn, R, Args >::Dependencies ( ) const
inlineoverridevirtual

◆ Name()

template<auto Fn, typename R , typename... Args>
std::string cuttlefish::GenericCommandSource< Fn, R, Args >::Name ( ) const
inlineoverridevirtual

Member Data Documentation

◆ __pad0__

template<auto Fn, typename R , typename... Args>
cuttlefish::GenericCommandSource< Fn, R, Args >::__pad0__

◆ args_

template<auto Fn, typename R , typename... Args>
std::tuple<Args...> cuttlefish::GenericCommandSource< Fn, R, Args >::args_
private

◆ commands_

template<auto Fn, typename R , typename... Args>
std::vector<MonitorCommand> cuttlefish::GenericCommandSource< Fn, R, Args >::commands_
private

◆ else

template<auto Fn, typename R , typename... Args>
cuttlefish::GenericCommandSource< Fn, R, Args >::else
Initial value:
{
static_assert(CommandAlwaysFalse<R>, "Unexpected AutoCmd return type")

◆ return

template<auto Fn, typename R , typename... Args>
cuttlefish::GenericCommandSource< Fn, R, Args >::return {}

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