vg
tools for working with variation graphs
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
vg::Option< vector< Item >, Parser > Class Template Reference

#include <option.hpp>

Inheritance diagram for vg::Option< vector< Item >, Parser >:
vg::BaseOption< vector< Item >, Parser > vg::OptionInterface

Public Types

using Value = vector< Item >
 

Public Member Functions

 Option ()=delete
 
virtual ~Option ()=default
 
size_t size () const
 
bool empty () const
 
Value::value_type & at (size_t i)
 
const Value::value_type & at (size_t i) const
 
Value::iterator begin ()
 
Value::iterator end ()
 
Value::const_iterator begin () const
 
Value::const_iterator end () const
 
- Public Member Functions inherited from vg::BaseOption< vector< Item >, Parser >
 BaseOption ()=delete
 
 BaseOption (Configurable *owner, const string &long_opt, const string &short_opts, const vector< Item > &default_value, const string &description)
 
virtual ~BaseOption ()=default
 
BaseOption< vector< Item >, Parser > & operator= (const BaseOption< vector< Item >, Parser > &other)=default
 
BaseOption< vector< Item >, Parser > & operator= (const vector< Item > &other)
 
 operator vector< Item > & ()
 
virtual const string & get_long_option () const
 
virtual const string & get_short_options () const
 
virtual const string & get_description () const
 
virtual string get_default_value () const
 
virtual bool has_argument () const
 
virtual void parse ()
 
virtual void parse (const string &arg)
 
- Public Member Functions inherited from vg::OptionInterface
virtual ~OptionInterface ()=default
 

Additional Inherited Members

- Protected Attributes inherited from vg::BaseOption< vector< Item >, Parser >
string long_opt
 What is the options's long option name.
 
string short_opts
 What is the option's short option name.
 
string description
 How is this option described to the user?
 
vector< Item > value
 
vector< Item > default_value
 

Detailed Description

template<typename Item, typename Parser>
class vg::Option< vector< Item >, Parser >

Specialize and add vector methods. TODO: magically autodetect if a container type has things and expose them. TODO: switch to operator* and operator->.

Member Typedef Documentation

◆ Value

template<typename Item , typename Parser >
using vg::Option< vector< Item >, Parser >::Value = vector<Item>

Constructor & Destructor Documentation

◆ Option()

template<typename Item , typename Parser >
vg::Option< vector< Item >, Parser >::Option ( )
delete

◆ ~Option()

template<typename Item , typename Parser >
virtual vg::Option< vector< Item >, Parser >::~Option ( )
virtualdefault

Member Function Documentation

◆ at() [1/2]

template<typename Item , typename Parser >
Value::value_type & vg::Option< vector< Item >, Parser >::at ( size_t  i)
inline

◆ at() [2/2]

template<typename Item , typename Parser >
const Value::value_type & vg::Option< vector< Item >, Parser >::at ( size_t  i) const
inline

◆ begin() [1/2]

template<typename Item , typename Parser >
Value::iterator vg::Option< vector< Item >, Parser >::begin ( )
inline

◆ begin() [2/2]

template<typename Item , typename Parser >
Value::const_iterator vg::Option< vector< Item >, Parser >::begin ( ) const
inline

◆ empty()

template<typename Item , typename Parser >
bool vg::Option< vector< Item >, Parser >::empty ( ) const
inline

◆ end() [1/2]

template<typename Item , typename Parser >
Value::iterator vg::Option< vector< Item >, Parser >::end ( )
inline

◆ end() [2/2]

template<typename Item , typename Parser >
Value::const_iterator vg::Option< vector< Item >, Parser >::end ( ) const
inline

◆ size()

template<typename Item , typename Parser >
size_t vg::Option< vector< Item >, Parser >::size ( ) const
inline

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