source: git/Singular/attrib.h @ 82716e

spielwiese
Last change on this file since 82716e was 6ae4f5, checked in by Hans Schönemann <hannes@…>, 27 years ago
* hannes: - corrected scanner.l: parsing of strings in blocks: if (1) { write("","}"); } - corrected ipassign.cc: assignment of "dummy" types: DEF, NONE - corrected sleftv::Print(_), initialisation of _ - added conversion int->def - added CopyD(DEF) - in insert(..): object should not be of type NONE (lists.cc:lInsert0) - added int*intvec, int*intmat to iparith.cc git-svn-id: file:///usr/local/Singular/svn/trunk@145 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 1.3 KB
Line 
1#ifndef ATTRIB_H
2#define ATTRIB_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/* $Id: attrib.h,v 1.3 1997-04-09 12:19:37 Singular Exp $ */
7/*
8* ABSTRACT: attributes to leftv and idhdl
9*/
10#include <string.h>
11#include "structs.h"
12
13class sattr;
14typedef sattr * attr;
15class sattr
16{
17  public:
18    void Init() { memset(this,0,sizeof(*this)); }
19    char *  name;
20    void *  data;
21    attr    next;
22    int     atyp; /* the type of the attribut, describes the data field
23                  */
24
25    void Print();
26    attr Copy(); /* copy all arguments */
27    void * CopyA(); /* copy the data of this attribute */
28    attr set(char * s, void * data, int t);
29    attr get(char * s);
30    void kill();
31    void killAll();
32};
33
34void * atGet(idhdl root,char * name);
35void * atGet(leftv root,char * name);
36void atSet(idhdl root,char * name,void * data,int typ);
37void atSet(leftv root,char * name,void * data,int typ);
38void atKillAll(idhdl root);
39void atKill(idhdl root,char * name);
40
41BOOLEAN atATTRIB1(leftv res,leftv a);
42BOOLEAN atATTRIB2(leftv res,leftv a,leftv b);
43BOOLEAN atATTRIB3(leftv res,leftv a,leftv b,leftv c);
44BOOLEAN atKILLATTR1(leftv res,leftv a);
45BOOLEAN atKILLATTR2(leftv res,leftv a,leftv b);
46#endif
Note: See TracBrowser for help on using the repository browser.