Public Member Functions | Private Attributes
RNode Class Reference

#include <f5lists.h>

Public Member Functions

 RNode ()
 
 RNode (RuleOld *r)
 
 ~RNode ()
 
RNodeinsert (RuleOld *r)
 
RNodeinsert (int i, poly t)
 
RNodeinsertOrdered (RuleOld *r)
 
RNodegetNext ()
 
RuleOldgetRuleOld ()
 
int getRuleOldIndex ()
 
poly getRuleOldTerm ()
 
void print ()
 

Private Attributes

RuleOlddata
 
RNodenext
 

Detailed Description

Definition at line 290 of file f5lists.h.

Constructor & Destructor Documentation

◆ RNode() [1/2]

RNode::RNode ( )

Definition at line 968 of file f5lists.cc.

968  {
969  //Print("HIER RNODE CONSTRUCTOR\n");
970  data = NULL;
971  next = NULL;
972 }
#define NULL
Definition: omList.c:10
RNode * next
Definition: f5lists.h:293
RuleOld * data
Definition: f5lists.h:292

◆ RNode() [2/2]

RNode::RNode ( RuleOld r)

Definition at line 974 of file f5lists.cc.

974  {
975  data = r;
976  next = NULL;
977 }
const ring r
Definition: syzextra.cc:208
#define NULL
Definition: omList.c:10
RNode * next
Definition: f5lists.h:293
RuleOld * data
Definition: f5lists.h:292

◆ ~RNode()

RNode::~RNode ( )

Definition at line 979 of file f5lists.cc.

979  {
980  //Print("DELETE RuleOld\n");
981  delete data;
982 }
RuleOld * data
Definition: f5lists.h:292

Member Function Documentation

◆ getNext()

RNode * RNode::getNext ( )

Definition at line 1024 of file f5lists.cc.

1024  {
1025  return next;
1026 }
RNode * next
Definition: f5lists.h:293

◆ getRuleOld()

RuleOld * RNode::getRuleOld ( )

Definition at line 1028 of file f5lists.cc.

1028  {
1029  return data;
1030 }
RuleOld * data
Definition: f5lists.h:292

◆ getRuleOldIndex()

int RNode::getRuleOldIndex ( )

Definition at line 1032 of file f5lists.cc.

1032  {
1033  return data->getIndex();
1034 }
int getIndex()
Definition: f5data.h:252
RuleOld * data
Definition: f5lists.h:292

◆ getRuleOldTerm()

poly RNode::getRuleOldTerm ( )

Definition at line 1036 of file f5lists.cc.

1036  {
1037  return data->getTerm();
1038 }
poly getTerm()
Definition: f5data.h:256
RuleOld * data
Definition: f5lists.h:292

◆ insert() [1/2]

RNode * RNode::insert ( RuleOld r)

Definition at line 984 of file f5lists.cc.

984  {
985  RNode* newElement = new RNode(r);
986  newElement->next = this;
987  return newElement;
988 }
RNode()
Definition: f5lists.cc:968
const ring r
Definition: syzextra.cc:208
RNode * next
Definition: f5lists.h:293
Definition: f5lists.h:290

◆ insert() [2/2]

RNode * RNode::insert ( int  i,
poly  t 
)

Definition at line 990 of file f5lists.cc.

990  {
991  //Print("IN INSERT: ");
992  //pWrite(t);
993  RuleOld* r = new RuleOld(i,t);
994  //Print("ADDRESS OF RuleOld: %p\n",r);
995  RNode* newElement = new RNode(r);
996  //Print("ADDRESS OF RNODE: %p\n",newElement);
997  //Print("ADDRESS OF RNODE DATA: %p\n",newElement->getRuleOld());
998  newElement->next = this;
999  return newElement;
1000 }
structure of RuleOlds(i.e.
Definition: f5data.h:232
RNode()
Definition: f5lists.cc:968
const ring r
Definition: syzextra.cc:208
int i
Definition: cfEzgcd.cc:123
RNode * next
Definition: f5lists.h:293
Definition: f5lists.h:290

◆ insertOrdered()

RNode * RNode::insertOrdered ( RuleOld r)

Definition at line 1003 of file f5lists.cc.

1003  {
1004  RNode* newElement = new RNode(r);
1005  RNode* temp = this;
1006  if(NULL == temp) {
1007  newElement->next = temp;
1008  return newElement;
1009  }
1010  if(1 == pLmCmp(newElement->getRuleOldTerm(),temp->getRuleOldTerm())) {
1011  newElement->next = temp;
1012  return newElement;
1013  }
1014  else {
1015  while(NULL != temp && 1 == pLmCmp(temp->getRuleOldTerm(),newElement->getRuleOldTerm())) {
1016  temp = temp->getNext();
1017  }
1018  newElement->next = temp;
1019  return this;
1020  }
1021 }
#define pLmCmp(p, q)
returns 0|1|-1 if p=q|p>q|p<q w.r.t monomial ordering
Definition: polys.h:105
RNode()
Definition: f5lists.cc:968
RNode * getNext()
Definition: f5lists.cc:1024
const ring r
Definition: syzextra.cc:208
poly getRuleOldTerm()
Definition: f5lists.cc:1036
#define NULL
Definition: omList.c:10
RNode * next
Definition: f5lists.h:293
Definition: f5lists.h:290

◆ print()

void RNode::print ( )

Definition at line 1040 of file f5lists.cc.

1040  {
1041  RNode* temp = this;
1042  while(NULL != temp) {
1043  pWrite(temp->getRuleOldTerm());
1044  Print("%d\n\n",temp->getRuleOldIndex());
1045  temp = temp->getNext();
1046  }
1047 }
#define Print
Definition: emacs.cc:83
void pWrite(poly p)
Definition: polys.h:290
RNode * getNext()
Definition: f5lists.cc:1024
poly getRuleOldTerm()
Definition: f5lists.cc:1036
int getRuleOldIndex()
Definition: f5lists.cc:1032
#define NULL
Definition: omList.c:10
Definition: f5lists.h:290

Field Documentation

◆ data

RuleOld* RNode::data
private

Definition at line 292 of file f5lists.h.

◆ next

RNode* RNode::next
private

Definition at line 293 of file f5lists.h.


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