FleCSI User API Version: 2.3.0
 
Loading...
Searching...
No Matches
specialization_base Struct Reference

Utilities and defaults for specializations. More...

Public Types

Utilities

For specifying policy information.

template<auto V, class T >
using from = util::key_type< V, T >
 A connectivity specification.
 
template<auto V, class T >
using entity = util::key_type< V, T >
 A special-entities specification.
 
template<auto... V>
using has = util::constants< V... >
 A list of enumerators for which to store data.
 
template<auto... V>
using to = util::constants< V... >
 A list of index spaces to use as output.
 
template<class... TT>
using list = util::types< TT... >
 Container.
 
Defaults

May be overridden by policy.

using index_space = single_space
 The index space type.
 
using index_spaces = has< elements >
 The set of index spaces, wrapped in has.
 
template<class B >
using interface = B
 The topology interface type.
 

Public Member Functions

 specialization_base ()=delete
 Specializations cannot be constructed.
 

Detailed Description

Utilities and defaults for specializations.

Member Typedef Documentation

◆ from

template<auto V, class T >
using from = util::key_type<V, T>

A connectivity specification.

Template Parameters
Vinput index space
Ta to list

◆ entity

template<auto V, class T >
using entity = util::key_type<V, T>

A special-entities specification.

Template Parameters
Vsubject index space
Ta has list

◆ has

template<auto... V>
using has = util::constants<V...>

A list of enumerators for which to store data.

Template Parameters
Voften index spaces

◆ to

template<auto... V>
using to = util::constants<V...>

A list of index spaces to use as output.

Template Parameters
Venumerators

◆ list

template<class... TT>
using list = util::types<TT...>

Container.

Template Parameters
TTfrom or entity constructs

◆ index_space

The index space type.

Must be valid as a template parameter type. Typically an enumeration; the enumerator values are unimportant (so long as they are distinct).

◆ index_spaces

The set of index spaces, wrapped in has.

Note
Other values (e.g., enumerators) of index_space are unused.

◆ interface

template<class B >
using interface = B

The topology interface type.

It must be B or inherit from it without adding any data members. Instances of it will be value-initialized and should default-initialize B.

Template Parameters
Bcore topology interface (a specialization of access from the appropriate core topology)

Constructor & Destructor Documentation

◆ specialization_base()

specialization_base ( )
delete

Specializations cannot be constructed.

Use slots to create topology instances.