19#ifndef PLURAL_INTERNAL_DECLARATIONS
20#define PLURAL_INTERNAL_DECLARATIONS
30#define CASE(A) case A: return o << (" " # A) << " ";
47 default:
return o <<
"Unknown type: [" << (
unsigned long) type <<
"]";
54 static inline std::string _2S(
T i)
63 static inline std::string _2S(number a,
const coeffs r)
80 std::clog << _2S(a, r) <<
", of size: " <<
n_Size(a, r);
83 std::clog << std::endl;
105 const int ll = strlen(
argv0);
106 const int l = 5 + ll;
109 strncpy(
s + ll,
".log", 5);
113 std::clog.rdbuf(
_ofs.rdbuf());
121 std::clog << std::endl << (
"<world>" ) << std::endl << std::endl;
124 StringSetS(
"resources in use (as reported by feStringAppendResources(0):\n");
134 std::clog << std::endl << std::endl <<(
"</world>" ) << std::endl << std::endl ;
137 virtual bool setUp() { std::clog << std::endl << std::endl <<(
"<test>" ) << std::endl << std::endl;
return true; }
138 virtual bool tearDown() { std::clog << std::endl << std::endl <<(
"</test>" ) << std::endl << std::endl;
return true; }
144template void CxxTest::doAssertDiffers<snumber* (*)(snumber*, snumber*, n_Procs_s*), void*>(
char const*,
unsigned int,
char const*,
snumber* (*)(
snumber*,
snumber*,
n_Procs_s*),
char const*,
void*,
char const*);
150template void CxxTest::doAssertEquals<snumber* (*)(long, n_Procs_s*), snumber* (*)(long, n_Procs_s*)>(
char const*,
unsigned int,
char const*,
snumber* (*)(
long,
n_Procs_s*),
char const*,
snumber* (*)(
long,
n_Procs_s*),
char const*);
151template void CxxTest::doAssertEquals<snumber* (*)(snumber*, snumber*, n_Procs_s*), snumber* (*)(snumber*, snumber*, n_Procs_s*)>(
char const*,
unsigned int,
char const*,
snumber* (*)(
snumber*,
snumber*,
n_Procs_s*),
char const*,
snumber* (*)(
snumber*,
snumber*,
n_Procs_s*),
char const*);
152template void CxxTest::doAssertEquals<void (*)(snumber**, n_Procs_s*), void (*)(snumber**, n_Procs_s*)>(
char const*,
unsigned int,
char const*,
void (*)(
snumber**,
n_Procs_s*),
char const*,
void (*)(
snumber**,
n_Procs_s*),
char const*);
163template bool CxxTest::equals<snumber* (*)(snumber*, snumber*, n_Procs_s*), snumber* (*)(snumber*, snumber*, n_Procs_s*)>(
snumber* (*)(
snumber*,
snumber*,
n_Procs_s*),
snumber* (*)(
snumber*,
snumber*,
n_Procs_s*));
165template char* CxxTest::numberToString<long>(
long,
char*,
long,
unsigned int,
unsigned int);
GlobalPrintingFixture(bool redirect=false)
virtual bool tearDownWorld()
virtual bool setUpWorld()
Coefficient rings, fields and other domains suitable for Singular polynomials.
#define n_Test(a, r)
BOOLEAN n_Test(number a, const coeffs r)
@ n_R
single prescision (6,6) real numbers
@ n_Q
rational (GMP) numbers
@ n_Znm
only used if HAVE_RINGS is defined
@ n_algExt
used for all algebraic extensions, i.e., the top-most extension in an extension tower is algebraic
@ n_Zn
only used if HAVE_RINGS is defined
@ n_long_R
real floating point (GMP) numbers
@ n_Z2m
only used if HAVE_RINGS is defined
@ n_transExt
used for all transcendental extensions, i.e., the top-most extension in an extension tower is transce...
@ n_Z
only used if HAVE_RINGS is defined
@ n_long_C
complex floating point (GMP) numbers
static FORCE_INLINE int n_Size(number n, const coeffs r)
return a non-negative measure for the complexity of n; return 0 only when n represents zero; (used fo...
static FORCE_INLINE void n_Write(number n, const coeffs r, const BOOLEAN bShortOut=TRUE)
const CanonicalForm int s
void feInitResources(const char *argv0)
'SR_INT' is the type of those integers small enough to fit into 29 bits.
void doAssertDiffers(const char *file, unsigned line, const char *xExpr, X x, const char *yExpr, Y y, const char *message)
void doAssertEquals(const char *file, unsigned line, const char *xExpr, X x, const char *yExpr, Y y, const char *message)
The main handler for Singular numbers which are suitable for Singular polynomials.
#define omFreeSize(addr, size)
void StringSetS(const char *st)
void PrintS(const char *s)
void feStringAppendResources(int warn)
ostream & operator<<(ostream &s, const spectrum &spec)