Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
Static Public Member Functions
abstraction::Registry Class Reference

#include <Registry.h>

Static Public Member Functions

static ext::set< ext::pair< std::string, ext::vector< std::string > > > listAlgorithmGroup (const std::string &group)
 
static ext::set< ext::pair< std::string, ext::vector< std::string > > > listAlgorithms ()
 
static ext::list< ext::pair< std::string, bool > > listCastsFrom (const std::string &type)
 
static ext::list< ext::pair< std::string, bool > > listCastsTo (const std::string &type)
 
static ext::list< ext::tuple< std::string, std::string, bool > > listCasts ()
 
static ext::list< ext::tuple< AlgorithmFullInfo, std::optional< std::string > > > listOverloads (const std::string &algorithm, const ext::vector< std::string > &templateParams)
 
static ext::list< ext::pair< Operators::BinaryOperators, AlgorithmFullInfo > > listBinaryOperators ()
 
static ext::list< ext::pair< Operators::PrefixOperators, AlgorithmFullInfo > > listPrefixOperators ()
 
static ext::list< ext::pair< Operators::PostfixOperators, AlgorithmFullInfo > > listPostfixOperators ()
 
static std::shared_ptr< abstraction::OperationAbstractiongetContainerAbstraction (const std::string &container, const std::string &type)
 
static std::shared_ptr< abstraction::OperationAbstractiongetAlgorithmAbstraction (const std::string &name, const ext::vector< std::string > &templateParams, const ext::vector< std::string > &paramTypes, const ext::vector< abstraction::TypeQualifiers::TypeQualifierSet > &typeQualifiers, AlgorithmCategories::AlgorithmCategory)
 
static std::shared_ptr< abstraction::OperationAbstractiongetBinaryOperatorAbstraction (Operators::BinaryOperators type, const ext::vector< std::string > &paramTypes, const ext::vector< abstraction::TypeQualifiers::TypeQualifierSet > &typeQualifiers, AlgorithmCategories::AlgorithmCategory)
 
static std::shared_ptr< abstraction::OperationAbstractiongetPrefixOperatorAbstraction (Operators::PrefixOperators type, const ext::vector< std::string > &paramTypes, const ext::vector< abstraction::TypeQualifiers::TypeQualifierSet > &typeQualifiers, AlgorithmCategories::AlgorithmCategory)
 
static std::shared_ptr< abstraction::OperationAbstractiongetPostfixOperatorAbstraction (Operators::PostfixOperators type, const ext::vector< std::string > &paramTypes, const ext::vector< abstraction::TypeQualifiers::TypeQualifierSet > &typeQualifiers, AlgorithmCategories::AlgorithmCategory)
 
static std::shared_ptr< abstraction::OperationAbstractiongetCastAbstraction (const std::string &target, const std::string &param)
 
static bool isCastNoOp (const std::string &target, const std::string &param)
 
static std::shared_ptr< abstraction::OperationAbstractiongetNormalizeAbstraction (const std::string &param)
 
static bool hasNormalize (const std::string &param)
 
static std::shared_ptr< abstraction::OperationAbstractiongetValuePrinterAbstraction (const std::string &param)
 

Member Function Documentation

◆ getAlgorithmAbstraction()

std::shared_ptr< abstraction::OperationAbstraction > abstraction::Registry::getAlgorithmAbstraction ( const std::string &  name,
const ext::vector< std::string > &  templateParams,
const ext::vector< std::string > &  paramTypes,
const ext::vector< abstraction::TypeQualifiers::TypeQualifierSet > &  typeQualifiers,
AlgorithmCategories::AlgorithmCategory  category 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getBinaryOperatorAbstraction()

std::shared_ptr< abstraction::OperationAbstraction > abstraction::Registry::getBinaryOperatorAbstraction ( Operators::BinaryOperators  type,
const ext::vector< std::string > &  paramTypes,
const ext::vector< abstraction::TypeQualifiers::TypeQualifierSet > &  typeQualifiers,
AlgorithmCategories::AlgorithmCategory  category 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getCastAbstraction()

std::shared_ptr< abstraction::OperationAbstraction > abstraction::Registry::getCastAbstraction ( const std::string &  target,
const std::string &  param 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getContainerAbstraction()

std::shared_ptr< abstraction::OperationAbstraction > abstraction::Registry::getContainerAbstraction ( const std::string &  container,
const std::string &  type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNormalizeAbstraction()

std::shared_ptr< abstraction::OperationAbstraction > abstraction::Registry::getNormalizeAbstraction ( const std::string &  param)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPostfixOperatorAbstraction()

std::shared_ptr< abstraction::OperationAbstraction > abstraction::Registry::getPostfixOperatorAbstraction ( Operators::PostfixOperators  type,
const ext::vector< std::string > &  paramTypes,
const ext::vector< abstraction::TypeQualifiers::TypeQualifierSet > &  typeQualifiers,
AlgorithmCategories::AlgorithmCategory  category 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPrefixOperatorAbstraction()

std::shared_ptr< abstraction::OperationAbstraction > abstraction::Registry::getPrefixOperatorAbstraction ( Operators::PrefixOperators  type,
const ext::vector< std::string > &  paramTypes,
const ext::vector< abstraction::TypeQualifiers::TypeQualifierSet > &  typeQualifiers,
AlgorithmCategories::AlgorithmCategory  category 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getValuePrinterAbstraction()

std::shared_ptr< abstraction::OperationAbstraction > abstraction::Registry::getValuePrinterAbstraction ( const std::string &  param)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ hasNormalize()

bool abstraction::Registry::hasNormalize ( const std::string &  param)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ isCastNoOp()

bool abstraction::Registry::isCastNoOp ( const std::string &  target,
const std::string &  param 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ listAlgorithmGroup()

ext::set< ext::pair< std::string, ext::vector< std::string > > > abstraction::Registry::listAlgorithmGroup ( const std::string &  group)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ listAlgorithms()

ext::set< ext::pair< std::string, ext::vector< std::string > > > abstraction::Registry::listAlgorithms ( )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ listBinaryOperators()

ext::list< ext::pair< Operators::BinaryOperators, AlgorithmFullInfo > > abstraction::Registry::listBinaryOperators ( )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ listCasts()

ext::list< ext::tuple< std::string, std::string, bool > > abstraction::Registry::listCasts ( )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ listCastsFrom()

ext::list< ext::pair< std::string, bool > > abstraction::Registry::listCastsFrom ( const std::string &  type)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ listCastsTo()

ext::list< ext::pair< std::string, bool > > abstraction::Registry::listCastsTo ( const std::string &  type)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ listOverloads()

ext::list< ext::tuple< AlgorithmFullInfo, std::optional< std::string > > > abstraction::Registry::listOverloads ( const std::string &  algorithm,
const ext::vector< std::string > &  templateParams 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ listPostfixOperators()

ext::list< ext::pair< Operators::PostfixOperators, AlgorithmFullInfo > > abstraction::Registry::listPostfixOperators ( )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ listPrefixOperators()

ext::list< ext::pair< Operators::PrefixOperators, AlgorithmFullInfo > > abstraction::Registry::listPrefixOperators ( )
static
Here is the call graph for this function:
Here is the caller graph for this function:

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