Changeset 7604db in git for Singular/ipprint.cc


Ignore:
Timestamp:
Apr 19, 1999, 1:03:57 PM (25 years ago)
Author:
Olaf Bachmann <obachman@…>
Branches:
(u'spielwiese', '4a9821a93ffdc22a6696668bd4f6b8c9de3e6c5f')
Children:
228c7e51151a4fc3bdf6908acbb09367f243d275
Parents:
a30caa3e79912e5d42b9d62c6d2e1aa1239e5486
Message:
* print command


git-svn-id: file:///usr/local/Singular/svn/trunk@2992 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/ipprint.cc

    ra30caa3 r7604db  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: ipprint.cc,v 1.10 1999-04-17 14:58:49 obachman Exp $ */
     4/* $Id: ipprint.cc,v 1.11 1999-04-19 11:02:39 obachman Exp $ */
    55/*
    66* ABSTRACT: interpreter: printing
     
    229229      case IDEAL_CMD:
    230230      {
    231         char* s = u->String();
     231        char* s = u->String(NULL, FALSE, 2);
    232232        PrintS(s);
    233233        PrintLn();
     
    334334/* ======================== end betti ================================= */
    335335
    336   if (strcmp((char *)v->Data(),"%s") == 0)
    337   {
    338     res->data = (char*) u->String();
    339   }
    340   else if (strcmp((char *)v->Data(),"%;") == 0)
     336  char* ns = mstrdup((char*) v->Data());
     337  int dim = 1;
     338  if (strlen(ns) == 3 && ns[1] == '2')
     339  {
     340    dim = 2;
     341    ns[1] = ns[2];
     342    ns[2] = '\0';
     343  }
     344  if (strcmp(ns,"%l") == 0)
     345  {
     346    res->data = (char*) u->String(NULL, TRUE, dim);
     347  }
     348  else if (strcmp(ns,"%t") == 0)
     349  {
     350    SPrintStart();
     351    type_cmd((idhdl) u);
     352    res->data = SPrintEnd();
     353  }
     354  else if (strcmp(ns,"%;") == 0)
    341355  {
    342356    SPrintStart();
     
    344358    res->data = SPrintEnd();
    345359  }
    346   else if  (strcmp((char *)v->Data(),"%p") == 0)
     360  else if  (strcmp(ns,"%p") == 0)
    347361  {
    348362    SPrintStart();
     
    350364    res->data = SPrintEnd();
    351365  }
    352   else if (strcmp((char *)v->Data(),"%b") == 0 && (u->Typ()==INTMAT_CMD))
     366  else if (strcmp(ns,"%b") == 0 && (u->Typ()==INTMAT_CMD))
    353367  {
    354368    SPrintStart();
     
    358372  else
    359373  {
    360     res->data = u->String();
     374    res->data = u->String(NULL, FALSE, dim);
    361375  }
    362376   
     377  FreeL(ns);
    363378  res->rtyp = STRING_CMD;
    364379  return FALSE;
Note: See TracChangeset for help on using the changeset viewer.