GiNaC 1.8.7
|
GiNaC's class registrar (for class basic and all classes derived from it). More...
#include "class_info.h"
#include "print.h"
#include <list>
#include <string>
#include <typeinfo>
#include <vector>
Go to the source code of this file.
Classes | |
struct | GiNaC::return_type_t |
To distinguish between different kinds of non-commutative objects. More... | |
class | GiNaC::registered_class_options |
This class stores information about a registered GiNaC class. More... | |
Namespaces | |
namespace | GiNaC |
Macros | |
#define | GINAC_DECLARE_REGISTERED_CLASS_COMMON(classname) |
Common part of GINAC_DECLARE_REGISTERED_CLASS_NO_CTORS and GINAC_DECLARE_REGISTERED_CLASS. More... | |
#define | GINAC_DECLARE_REGISTERED_CLASS_NO_CTORS(classname, supername) |
Primary macro for inclusion in the declaration of each registered class. More... | |
#define | GINAC_DECLARE_REGISTERED_CLASS(classname, supername) |
Macro for inclusion in the declaration of each registered class. More... | |
#define | GINAC_IMPLEMENT_REGISTERED_CLASS(classname, supername) GiNaC::registered_class_info classname::reg_info = GiNaC::registered_class_info(GiNaC::registered_class_options(#classname, #supername, typeid(classname))); |
Macro for inclusion in the implementation of each registered class. More... | |
#define | GINAC_IMPLEMENT_REGISTERED_CLASS_OPT(classname, supername, options) GiNaC::registered_class_info classname::reg_info = GiNaC::registered_class_info(GiNaC::registered_class_options(#classname, #supername, typeid(classname)).options); |
Macro for inclusion in the implementation of each registered class. More... | |
#define | GINAC_IMPLEMENT_REGISTERED_CLASS_OPT_T(classname, supername, options) GiNaC::registered_class_info classname::reg_info = GiNaC::registered_class_info(GiNaC::registered_class_options(#classname, #supername, typeid(classname)).options); |
Macro for inclusion in the implementation of each registered class. More... | |
Typedefs | |
typedef class_info< registered_class_options > | GiNaC::registered_class_info |
Functions | |
template<typename T > | |
return_type_t | GiNaC::make_return_type_t (const unsigned rl=0) |
template<class Alg , class Ctx , class T , class C > | |
void | GiNaC::set_print_func (void f(const T &, const C &c, unsigned)) |
Add or replace a print method. More... | |
template<class Alg , class Ctx , class T , class C > | |
void | GiNaC::set_print_func (void(T::*f)(const C &, unsigned)) |
Add or replace a print method. More... | |
GiNaC's class registrar (for class basic and all classes derived from it).
Definition in file registrar.h.
#define GINAC_DECLARE_REGISTERED_CLASS_COMMON | ( | classname | ) |
Common part of GINAC_DECLARE_REGISTERED_CLASS_NO_CTORS and GINAC_DECLARE_REGISTERED_CLASS.
Definition at line 129 of file registrar.h.
#define GINAC_DECLARE_REGISTERED_CLASS_NO_CTORS | ( | classname, | |
supername | |||
) |
Primary macro for inclusion in the declaration of each registered class.
Definition at line 141 of file registrar.h.
#define GINAC_DECLARE_REGISTERED_CLASS | ( | classname, | |
supername | |||
) |
Macro for inclusion in the declaration of each registered class.
It declares some functions that are common to all classes derived from 'basic' as well as all required stuff for the GiNaC class registry (mainly needed for archiving).
Definition at line 153 of file registrar.h.
#define GINAC_IMPLEMENT_REGISTERED_CLASS | ( | classname, | |
supername | |||
) | GiNaC::registered_class_info classname::reg_info = GiNaC::registered_class_info(GiNaC::registered_class_options(#classname, #supername, typeid(classname))); |
Macro for inclusion in the implementation of each registered class.
Definition at line 180 of file registrar.h.
#define GINAC_IMPLEMENT_REGISTERED_CLASS_OPT | ( | classname, | |
supername, | |||
options | |||
) | GiNaC::registered_class_info classname::reg_info = GiNaC::registered_class_info(GiNaC::registered_class_options(#classname, #supername, typeid(classname)).options); |
Macro for inclusion in the implementation of each registered class.
Additional options can be specified.
Definition at line 185 of file registrar.h.
#define GINAC_IMPLEMENT_REGISTERED_CLASS_OPT_T | ( | classname, | |
supername, | |||
options | |||
) | GiNaC::registered_class_info classname::reg_info = GiNaC::registered_class_info(GiNaC::registered_class_options(#classname, #supername, typeid(classname)).options); |
Macro for inclusion in the implementation of each registered class.
Additional options can be specified.
Definition at line 190 of file registrar.h.