My Project
UNKNOWN_GIT_VERSION
libpolys
polys
templates
p_Copy__T.cc
Go to the documentation of this file.
1
/****************************************
2
* Computer Algebra System SINGULAR *
3
****************************************/
4
/***************************************************************
5
* File: p_Copy__Template.cc
6
* Purpose: template for p_Copy__T
7
* Author: obachman (Olaf Bachmann)
8
* Created: 8/00
9
*******************************************************************/
10
11
LINKAGE
poly
p_Copy__T
(poly s_p,
const
ring r)
12
{
13
// let's not do tests here -- but instead allow
14
// to be sloppy
15
spolyrec
dp;
16
poly d_p = &dp;
17
omBin
bin = r->PolyBin;
18
poly
h
;
19
20
DECLARE_LENGTH(
const
unsigned
long
length
= r->ExpL_Size);
21
22
while
(s_p !=
NULL
)
23
{
24
p_AllocBin
(
pNext
(d_p), bin, r);
25
pIter
(d_p);
26
number n_p=
pGetCoeff
(s_p);
27
if
(n_p!=
NULL
) n_p=
n_Copy
(n_p,r->cf);
28
pSetCoeff0
(d_p, n_p);
29
// it is better to iter here,
30
// for MemCopy advances goes from low to high addresses
31
h
= s_p;
32
s_p =
pNext
(s_p);
33
p_MemCopy__T(d_p->exp,
h
->exp,
length
);
34
}
35
pNext
(d_p) =
NULL
;
36
37
return
dp.
next
;
38
}
39
length
static BOOLEAN length(leftv result, leftv arg)
Definition:
interval.cc:263
spolyrec::next
poly next
Definition:
monomials.h:25
h
static Poly * h
Definition:
janet.cc:972
pIter
#define pIter(p)
Definition:
monomials.h:38
spolyrec
Definition:
monomials.h:24
omBin
omBin_t * omBin
Definition:
omStructs.h:12
pSetCoeff0
#define pSetCoeff0(p, n)
Definition:
monomials.h:60
n_Copy
static FORCE_INLINE number n_Copy(number n, const coeffs r)
return a copy of 'n'
Definition:
coeffs.h:451
NULL
#define NULL
Definition:
omList.c:10
p_Copy__T
LINKAGE poly p_Copy__T(poly s_p, const ring r)
Definition:
p_Copy__T.cc:11
p_AllocBin
#define p_AllocBin(p, bin, r)
Definition:
monomials.h:249
pGetCoeff
static number & pGetCoeff(poly p)
return an alias to the leading coefficient of p assumes that p != NULL NOTE: not copy
Definition:
monomials.h:45
LINKAGE
#define LINKAGE
Definition:
mod2.h:141
pNext
#define pNext(p)
Definition:
monomials.h:37
Generated on Wed Sep 30 2020 00:00:00 for My Project by
doxygen 1.8.20
for
Singular UNKNOWN_GIT_VERSION