Functions
p_ShallowCopyDelete__T.cc File Reference

Go to the source code of this file.

Functions

LINKAGE poly p_ShallowCopyDelete__T (poly s_p, const ring r, omBin d_bin)
 

Function Documentation

LINKAGE poly p_ShallowCopyDelete__T ( poly  s_p,
const ring  r,
omBin  d_bin 
)

Definition at line 17 of file p_ShallowCopyDelete__T.cc.

18 {
19  spolyrec dp;
20  poly d_p = &dp;
21  poly h;
22 
23  DECLARE_LENGTH(const unsigned long length = r->ExpL_Size);
24 
25  while (s_p != NULL)
26  {
27  p_AllocBin(d_p->next, d_bin, r);
28  pIter(d_p);
29  pSetCoeff0(d_p, pGetCoeff(s_p));
30  h = s_p;
31  s_p = pNext(s_p);
32  p_MemCopy__T(d_p->exp, h->exp, length);
33  p_FreeBinAddr(h, r);
34  }
35  pNext(d_p) = NULL;
36  return dp.next;
37 }
#define p_AllocBin(p, bin, r)
Definition: monomials.h:256
static number & pGetCoeff(poly p)
return an alias to the leading coefficient of p assumes that p != NULL NOTE: not copy ...
Definition: monomials.h:51
#define pIter(p)
Definition: monomials.h:44
#define p_FreeBinAddr(p, r)
Definition: monomials.h:263
const ring r
Definition: syzextra.cc:208
#define NULL
Definition: omList.c:10
#define pNext(p)
Definition: monomials.h:43
#define pSetCoeff0(p, n)
Definition: monomials.h:67
polyrec * poly
Definition: hilb.h:10
static Poly * h
Definition: janet.cc:978
poly next
Definition: monomials.h:31