Changeset 22f6bc in git


Ignore:
Timestamp:
Apr 27, 2005, 5:15:18 PM (18 years ago)
Author:
Hans Schönemann <hannes@…>
Branches:
(u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'a800fe4b3e9d37a38c5a10cc0ae9dfa0c15a4ee6')
Children:
fdcb36f66ca35bb8a596233506340b4ff74084b1
Parents:
64345a457201efbd876e37497c327e80554da35d
Message:
*hannes: exportto, importfrom


git-svn-id: file:///usr/local/Singular/svn/trunk@7915 2c84dea3-7e68-4137-9b89-c4e89433aadc
Location:
Singular
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • Singular/grammar.y

    r64345a4 r22f6bc  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: grammar.y,v 1.104 2005-01-18 15:41:58 Singular Exp $ */
     4/* $Id: grammar.y,v 1.105 2005-04-27 15:15:15 Singular Exp $ */
    55/*
    66* ABSTRACT: SINGULAR shell grammatik
     
    310310%token <i> EXAMPLE_CMD
    311311%token <i> EXPORT_CMD
    312 %token <i> EXPORTTO_CMD
    313 %token <i> IMPORTFROM_CMD
    314312%token <i> HELP_CMD
    315313%token <i> KILL_CMD
  • Singular/iparith.cc

    r64345a4 r22f6bc  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: iparith.cc,v 1.346 2005-04-26 08:59:10 Singular Exp $ */
     4/* $Id: iparith.cc,v 1.347 2005-04-27 15:15:18 Singular Exp $ */
    55
    66/*
     
    146146
    147147#define ii_div_by_0 "div. by 0"
     148#define ii_not_for_plural "not implemented for non-commutative rings"
     149
    148150int iiOp; /* the current operation*/
    149151
     
    195197  { "execute",     0, EXECUTE_CMD ,       CMD_1},
    196198  { "export",      0, EXPORT_CMD ,        EXPORT_CMD},
     199  { "exportto",    0, EXPORTTO_CMD ,      CMD_2},
    197200  { "factorize",   0, FAC_CMD ,           CMD_12},
    198201  { "fetch",       0, FETCH_CMD ,         CMD_2},
     
    216219  { "imap",        0, IMAP_CMD ,          CMD_2},
    217220  { "impart",      0, IMPART_CMD ,        CMD_1},
     221  { "importfrom",  0, IMPORTFROM_CMD ,    CMD_2},
    218222  { "indepSet",    0, INDEPSET_CMD ,      CMD_12},
    219223  { "insert",      0, INSERT_CMD ,        CMD_23},
     
    14511455  int typ;
    14521456  BOOLEAN t=FALSE;
    1453   if (u->rtyp!=IDHDL) 
     1457  if (u->rtyp!=IDHDL)
    14541458  {
    14551459    tmp_proc.id="_auto";
    14561460    tmp_proc.typ=PROC_CMD;
    1457     tmp_proc.data.pinf=(procinfo *)u->Data(); 
     1461    tmp_proc.data.pinf=(procinfo *)u->Data();
    14581462    tmp_proc.ref=1;
    14591463    d=u->data; u->data=(void *)&tmp_proc;
     
    16471651  res->data=(char *)idElimination((ideal)u->Data(),(poly)v->Data());
    16481652  setFlag(res,FLAG_STD);
     1653  return FALSE;
     1654}
     1655static BOOLEAN jjEXPORTTO(leftv res, leftv u, leftv v)
     1656{
     1657  Print("exportto %s -> %s\n",v->Name(),u->Name() );
    16491658  return FALSE;
    16501659}
     
    17101719  L->Init(l);
    17111720  l=0;
    1712   while(h!=NULL) 
     1721  while(h!=NULL)
    17131722  {
    17141723    L->m[l].data=(char *)h->d;
     
    19181927  return FALSE;
    19191928}
     1929static BOOLEAN jjIMPORTFROM(leftv res, leftv u, leftv v)
     1930{
     1931  Print("importfrom %s::%s ->.\n",v->Name(),u->Name() );
     1932  return FALSE;
     1933}
    19201934static BOOLEAN jjINDEPSET2(leftv res, leftv u, leftv v)
    19211935{
     
    20592073static BOOLEAN jjBRACKET(leftv res, leftv a, leftv b)
    20602074{
    2061   if (rIsPluralRing(currRing)) 
     2075  if (rIsPluralRing(currRing))
    20622076  {
    20632077    poly p = (poly)a->CopyD(POLY_CMD);
     
    20972111        break;
    20982112      }
    2099     case POLY_CMD: 
     2113    case POLY_CMD:
    21002114    case VECTOR_CMD:
    21012115      {
     
    21052119        break;
    21062120      }
    2107     case IDEAL_CMD: 
    2108     case MODUL_CMD: 
     2121    case IDEAL_CMD:
     2122    case MODUL_CMD:
    21092123      {
    21102124        ideal   Q = (ideal)IDDATA(w);
     
    21132127        break;
    21142128      }
    2115     case MATRIX_CMD: 
     2129    case MATRIX_CMD:
    21162130      {
    21172131        ring save = currRing;
     
    21222136        ideal   S = idOppose(r,Q);
    21232137        id_Delete(&Q, r);
    2124         res->data = idModule2Matrix(S); 
     2138        res->data = idModule2Matrix(S);
    21252139        res->rtyp = argtype;
    21262140        break;
    21272141      }
    2128     default: 
    2129       {       
    2130         Werror("unsupported type in oppose");
     2142    default:
     2143      {
     2144        WerrorS("unsupported type in oppose");
    21312145        return TRUE;
    21322146      }
    21332147    }
    21342148  }
    2135   else 
     2149  else
    21362150  {
    21372151    Werror("identifier %s not found in %s",b->Fullname(),a->Fullname());
     
    21402154  return FALSE;
    21412155}
    2142 
    21432156#endif /* HAVE_PLURAL */
    21442157
     
    22862299  if (ww!=NULL) { delete ww; ww=NULL; }
    22872300  if ((r->weights!=NULL) && (r->weights[0]!=NULL))
    2288   { 
     2301  {
    22892302    ww=ivCopy(r->weights[0]);
    22902303    if (weights!=NULL) (*ww) += add_row_shift;
     
    26852698,{jjELIMIN,    ELIMINATION_CMD,IDEAL_CMD,      IDEAL_CMD,  POLY_CMD ALLOW_PLURAL}
    26862699,{jjELIMIN,    ELIMINATION_CMD,MODUL_CMD,      MODUL_CMD,  POLY_CMD ALLOW_PLURAL}
     2700,{jjEXPORTTO,  EXPORTTO_CMD,   NONE,           PACKAGE_CMD, IDHDL ALLOW_PLURAL}
    26872701,{jjEXTGCD_I,  EXTGCD_CMD,     LIST_CMD,       INT_CMD,    INT_CMD ALLOW_PLURAL}
    26882702#ifdef HAVE_FACTORY
     
    27242738,{jjFETCH,     IMAP_CMD,       ANY_TYPE/*set by p*/,RING_CMD,  ANY_TYPE ALLOW_PLURAL}
    27252739,{jjFETCH,     IMAP_CMD,       ANY_TYPE/*set by p*/,QRING_CMD, ANY_TYPE ALLOW_PLURAL}
     2740,{jjIMPORTFROM,IMPORTFROM_CMD, NONE,           PACKAGE_CMD, ANY_TYPE ALLOW_PLURAL}
    27262741,{jjINDEPSET2, INDEPSET_CMD,   LIST_CMD,       IDEAL_CMD,  INT_CMD NO_PLURAL}
    27272742,{lInsert,     INSERT_CMD,     LIST_CMD,       LIST_CMD,   DEF_CMD ALLOW_PLURAL}
     
    30813096  L->Init(l);
    30823097  l=0;
    3083   while(h!=NULL) 
     3098  while(h!=NULL)
    30843099  {
    30853100    L->m[l].data=(char *)h->d;
     
    31503165    if (p==NULL)
    31513166    {
    3152       Werror("module must be zero-dimensional");
     3167      WerrorS("module must be zero-dimensional");
    31533168      if (delete_w) delete w;
    31543169      return TRUE;
     
    36353650  ring    r = (ring)a->Data();
    36363651  if (rIsPluralRing(r))
    3637   { 
     3652  {
    36383653    res->data = rOpposite(r);
    36393654  }
     
    36463661  ring    r = (ring)a->Data();
    36473662  if (rIsPluralRing(r))
    3648   { 
     3663  {
    36493664    //    ideal   i;
    36503665//     if (a->rtyp == QRING_CMD)
     
    52625277}
    52635278
     5279//static BOOLEAN jjEXPORTTO_M(leftv res, leftv u)
     5280//{
     5281//  int l=u->listLength();
     5282//  if (l<2) return TRUE;
     5283//  BOOLEAN b;
     5284//  leftv v=u->next;
     5285//  leftv zz=v;
     5286//  leftv z=zz;
     5287//  u->next=NULL;
     5288//  do
     5289//  {
     5290//    leftv z=z->next;
     5291//    b=iiExprArith2(res,u,iiOp,z, (iiOp > 255));
     5292//    if (b) break;
     5293//  } while (z!=NULL);
     5294//  u->next=zz;
     5295//  return b;
     5296//}
    52645297static BOOLEAN jjIDEAL_PL(leftv res, leftv v)
    52655298{
     
    54515484    if(!pIsUnit((poly)u2->Data()))
    54525485    {
    5453       Werror("2nd argument must be a unit");
     5486      WerrorS("2nd argument must be a unit");
    54545487      return TRUE;
    54555488    }
     
    54675500    if(!mpIsDiagUnit((matrix)u2->Data()))
    54685501    {
    5469       Werror("2nd argument must be a diagonal matrix of units");
     5502      WerrorS("2nd argument must be a diagonal matrix of units");
    54705503      return TRUE;
    54715504    }
     
    55935626    if(!mpIsDiagUnit((matrix)u2->Data()))
    55945627    {
    5595       Werror("2nd argument must be a diagonal matrix of units");
     5628      WerrorS("2nd argument must be a diagonal matrix of units");
    55965629      return TRUE;
    55975630    }
     
    56085641    if(!pIsUnit((poly)u2->Data()))
    56095642    {
    5610       Werror("2nd argument must be a unit");
     5643      WerrorS("2nd argument must be a unit");
    56115644      return TRUE;
    56125645    }
     
    56355668    if(!mpIsDiagUnit((matrix)u2->Data()))
    56365669    {
    5637       Werror("2nd argument must be a diagonal matrix of units");
     5670      WerrorS("2nd argument must be a diagonal matrix of units");
    56385671      return TRUE;
    56395672    }
     
    56515684    if(!pIsUnit((poly)u2->Data()))
    56525685    {
    5653       Werror("2nd argument must be a unit");
     5686      WerrorS("2nd argument must be a unit");
    56545687      return TRUE;
    56555688    }
     
    58115844,{jjDIVISION4, DIVISION_CMD,    ANY_TYPE/*or set by p*/,4    NO_PLURAL}
    58125845,{jjDBPRINT,   DBPRINT_CMD,     NONE,               -2       ALLOW_PLURAL}
     5846//,{jjEXPORTTO_M,  EXPORTTO_CMD,    NONE,             -2       ALLOW_PLURAL}
    58135847,{jjCALL1ARG,  IDEAL_CMD,       IDEAL_CMD,          1        ALLOW_PLURAL}
    58145848,{jjIDEAL_PL,  IDEAL_CMD,       IDEAL_CMD,          -1       ALLOW_PLURAL}
     
    62616295          if (dArith2[i].valid_for_plural==0 /*NO_PLURAL*/)
    62626296          {
    6263             Werror("not implemented for non-commutative rings");
     6297            WerrorS(ii_not_for_plural);
    62646298            break;
    62656299          }
     
    63046338              if (dArith2[i].valid_for_plural==0 /*NO_PLURAL*/)
    63056339              {
    6306                 Werror("not implemented for non-commutative rings");
     6340                WerrorS(ii_not_for_plural);
    63076341                break;
    63086342              }
     
    64386472          if (dArith1[i].valid_for_plural==0 /*NO_PLURAL*/)
    64396473          {
    6440             Werror("not implemented for non-commutative rings");
     6474            WerrorS(ii_not_for_plural);
    64416475            break;
    64426476          }
     
    64896523            if (dArith1[i].valid_for_plural==0 /*NO_PLURAL*/)
    64906524            {
    6491               Werror("not implemented for non-commutative rings");
     6525              WerrorS(ii_not_for_plural);
    64926526              break;
    64936527            }
     
    66186652            if (dArith3[i].valid_for_plural==0 /*NO_PLURAL*/)
    66196653            {
    6620               Werror("not implemented for non-commutative rings");
     6654              WerrorS(ii_not_for_plural);
    66216655              break;
    66226656            }
     
    66646698                if (dArith3[i].valid_for_plural==0 /*NO_PLURAL*/)
    66656699                {
    6666                    Werror("not implemented for non-commutative rings");
     6700                   WerrorS(ii_not_for_plural);
    66676701                   break;
    66686702                 }
     
    68506884          if (dArithM[i].valid_for_plural==0 /*NO_PLURAL*/)
    68516885          {
    6852             Werror("not implemented for non-commutative rings");
     6886            WerrorS(ii_not_for_plural);
    68536887            break;
    68546888          }
  • Singular/tok.h

    r64345a4 r22f6bc  
    77* ABSTRACT: tokens, types for interpreter; general macros
    88*/
    9 /* $Id: tok.h,v 1.59 2004-10-18 18:57:46 levandov Exp $ */
     9/* $Id: tok.h,v 1.60 2005-04-27 15:15:17 Singular Exp $ */
    1010
    1111#ifndef MYYSTYPE
     
    7878  ERROR_CMD,
    7979  EXECUTE_CMD,
     80  EXPORTTO_CMD,
    8081  EXTGCD_CMD,
    8182  FAC_CMD,
     
    9091  HRES_CMD,
    9192  IMPART_CMD,
     93  IMPORTFROM_CMD,
    9294  INSERT_CMD,
    9395  INT_CMD,
Note: See TracChangeset for help on using the changeset viewer.