Beispiel #1
0
static A jtmakename(J jt,C*s){A z;I m;NM*zv;
 m=strlen(s);
 GATV(z,NAME,m,1,0); zv=NAV(z);  // Use GATV because GA doesn't support NAME type
 MC(zv->s,s,m); *(m+zv->s)=0;
 zv->m   =(UC)m; 
 zv->bucket=zv->bucketx=0;
 zv->flag=NMDOT;
 zv->hash=nmhash(m,s);
 ACX(z);
 R z;
}
Beispiel #2
0
static A jtmakename(J jt,C*s){A z;I m;NM*zv;
 m=strlen(s);
 GA(z,NAME,m,1,0); zv=NAV(z);
 memcpy(zv->s,s,m); *(m+zv->s)=0;
 zv->m   =(UC)m; 
 zv->sn  =0; 
 zv->e   =0;
 zv->flag=NMDOT;
 zv->hash=NMHASH(m,s); 
 ACX(z);
 R z;
}
Beispiel #3
0
DC jtdeba(J jt,C t,A x,A y,A fs){A q;DC d;
 GA(q,LIT,sizeof(DST),1,0); d=(DC)AV(q);
 memset(d,C0,sizeof(DST));
 d->dctype=t; d->dclnk=jt->sitop; jt->sitop=d;
 switch(t){
  case DCPARSE:  d->dcy=y; break;
  case DCSCRIPT: d->dcy=y; d->dcm=(I)fs; break;
  case DCCALL:   
   d->dcx=x; d->dcy=y; d->dcf=fs; 
   d->dca=jt->curname; d->dcm=NAV(jt->curname)->m;
   d->dcn=(I)jt->cursymb;
   d->dcstop=-2;
   if(jt->dbss==SSSTEPINTO){d->dcss=SSSTEPINTO; jt->dbssd=d; jt->dbss=0;}
 }
 R d;
}    /* create new top of si stack */