IArray< name_, readOnly_, N, Opts_ > Struct Template Reference

An array of fixed size N of options. More...

#include "IOption.hpp"

+ Inheritance diagram for IArray< name_, readOnly_, N, Opts_ >:

Public Types

typedef NameT< name_ > Name
- Public Types inherited from IContainer< name_, readOnly_, Opts_ >
typedef std::conditional
< IsCons< Opts_ >::value,
IGroup< name_, readOnly_,
Opts_ >, ILeaf< name_,
readOnly_, Opts_ > >::type 
Element

Additional Inherited Members

- Public Member Functions inherited from IContainer< name_, readOnly_, Opts_ >
virtual std::size_t size () const =0
 The number of actual elements.
virtual const Element & all () const =0
 Access the default element.
virtual const Element & operator[] (std::size_t idx) const =0
 Access an actual element.

Detailed Description

template<Names::Type name_, bool readOnly_, std::size_t N, class Opts_>
struct opals::opts::IArray< name_, readOnly_, N, Opts_ >

An array of fixed size N of options.

Template Parameters
name_The name of the array and its elements.
readOnly_If true, then this array and its elements may not be changed.
NThe number of elements.
Opts_If a scalar, then the element type is ILeaf, with that scalar as value type. Otherwise, it is IGroup, with the respective sequence of group members.