attrib.h
Go to the documentation of this file.
1 #ifndef ATTRIB_H
2 #define ATTRIB_H
3 /****************************************
4 * Computer Algebra System SINGULAR *
5 ****************************************/
6 /*
7 * ABSTRACT: attributes to leftv and idhdl
8 */
9 #include "kernel/structs.h"
10 #include "omalloc/omalloc.h"
11 #ifdef HAVE_OMALLOC
12 #include "omalloc/omallocClass.h"
13 #endif
14 
15 class sattr;
16 typedef sattr * attr;
17 class sattr
18 #ifdef HAVE_OMALLOC
19  : public omallocClass
20 #endif
21 {
22  public:
23  inline void Init() { memset(this,0,sizeof(*this)); }
24  char * name;
25  void * data;
27  int atyp; /* the type of the attribut, describes the data field
28  */
29 
30  void Print();
31  attr Copy(); /* copy all arguments */
32  void * CopyA(); /* copy the data of this attribute */
33  attr set(char * s, void * data, int t); /* eats s, data */
34  attr get(const char * s);
35  void kill(const ring r);
36  void killAll(const ring r);
37 };
38 
39 //void * atGet(idhdl root,const char * name);
40 //void * atGet(leftv root,const char * name);
41 void * atGet(idhdl root,const char * name, int t, void *defaultReturnValue = NULL);
42 void * atGet(leftv root,const char * name, int t);
43 void atSet(idhdl root,char * name,void * data,int typ);
44 void atSet(leftv root,char * name,void * data,int typ);
45 void at_KillAll(idhdl root,const ring r);
46 void at_KillAll(leftv root,const ring r);
47 #define atKillAll(H) at_KillAll(H,currRing)
48 void at_Kill(idhdl root,const char * name,const ring r);
49 #define atKill(H,A) at_Kill(H,A,currRing)
50 
56 #endif
const CanonicalForm int s
Definition: facAbsFact.cc:55
Class used for (list of) interpreter objects.
Definition: subexpr.h:82
void killAll(const ring r)
Definition: attrib.cc:186
Definition: attrib.h:17
void Print()
Definition: attrib.cc:26
void at_KillAll(idhdl root, const ring r)
Definition: attrib.cc:219
void atSet(idhdl root, char *name, void *data, int typ)
Definition: attrib.cc:150
BOOLEAN atATTRIB1(leftv res, leftv a)
Definition: attrib.cc:231
void * data
Definition: attrib.h:25
BOOLEAN atKILLATTR2(leftv res, leftv a, leftv b)
Definition: attrib.cc:465
void * atGet(idhdl root, const char *name, int t, void *defaultReturnValue=NULL)
Definition: attrib.cc:129
void at_Kill(idhdl root, const char *name, const ring r)
Definition: attrib.cc:199
void kill(const ring r)
Definition: attrib.cc:180
Definition: idrec.h:34
void * CopyA()
Definition: subexpr.cc:2034
sattr * attr
Definition: attrib.h:15
CanonicalForm b
Definition: cfModGcd.cc:4044
CanonicalForm res
Definition: facAbsFact.cc:64
char * name
Definition: attrib.h:24
BOOLEAN atATTRIB3(leftv res, leftv a, leftv b, leftv c)
Definition: attrib.cc:357
BOOLEAN atKILLATTR1(leftv res, leftv a)
Definition: attrib.cc:448
#define NULL
Definition: omList.c:12
attr next
Definition: attrib.h:26
attr Copy()
Definition: attrib.cc:33
BOOLEAN atATTRIB2(leftv res, leftv a, leftv b)
Definition: attrib.cc:275
int BOOLEAN
Definition: auxiliary.h:87
void Init()
Definition: attrib.h:23
int atyp
Definition: attrib.h:27