Newer
Older

Christophe Geuzaine
committed
yymsg(GERROR, "Wrong layer definition {%d, %d}",
List_Nbr(yyvsp[-4].l), List_Nbr(yyvsp[-2].l));
}
List_Delete(yyvsp[-4].l);
List_Delete(yyvsp[-2].l);
;
break;}
#line 2382 "Gmsh.y"
{
extr.mesh.Recombine = true;
;
break;}
#line 2391 "Gmsh.y"
Curve *c;
for(i=0;i<List_Nbr(yyvsp[-3].l);i++){
List_Read(yyvsp[-3].l,i,&d);
j = (int)fabs(d);
c = FindCurve(j,THEM);
if(!c)

Christophe Geuzaine
committed
yymsg(WARNING, "Unknown Curve %d", j);
c->Method = TRANSFINI;
c->ipar[0] = (yyvsp[-1].d>2)?(int)yyvsp[-1].d:2;
c->ipar[1] = sign(d);
c->dpar[0] = 1.0;
#line 2409 "Gmsh.y"
{
Curve *c;
for(i=0;i<List_Nbr(yyvsp[-6].l);i++){
List_Read(yyvsp[-6].l,i,&d);
j = (int)fabs(d);
c = FindCurve(j,THEM);
if(!c)

Christophe Geuzaine
committed
yymsg(WARNING, "Unknown Curve %d", j);
c->Method = TRANSFINI;
c->ipar[0] = (yyvsp[-4].d>2)?(int)yyvsp[-4].d:2;
c->ipar[1] = sign(d); /* Progresion : code 1 ou -1 */
c->dpar[0] = fabs(yyvsp[-1].d);
;
break;}
#line 2427 "Gmsh.y"
Curve *c;
for(i=0;i<List_Nbr(yyvsp[-6].l);i++){
List_Read(yyvsp[-6].l,i,&d);
j = (int)fabs(d);
c = FindCurve(j,THEM);
if(!c)

Christophe Geuzaine
committed
yymsg(WARNING, "Unknown Curve %d", j);
c->Method = TRANSFINI;
c->ipar[0] = (yyvsp[-4].d>2)?(int)yyvsp[-4].d:2;
c->ipar[1] = 2*sign(d); /* Bump : code 2 ou -2 */
c->dpar[0] = fabs(yyvsp[-1].d);
#line 2445 "Gmsh.y"
Surface *s = FindSurface((int)yyvsp[-4].d,THEM);
if(!s)

Christophe Geuzaine
committed
yymsg(WARNING, "Unknown Surface %d", (int)yyvsp[-4].d);
s->Method = TRANSFINI;
k = List_Nbr(yyvsp[-1].l);
if(k!=3 && k!=4){

Christophe Geuzaine
committed
yymsg(GERROR, "Wrong definition of Transfinite Surface %d: "
"%d points instead of 3 or 4" , yyvsp[-4].d, k) ;
for(i=0;i<k;i++){
List_Read(yyvsp[-1].l,i,&d);
j = (int)fabs(d);
s->ipar[i] = j;
#line 2467 "Gmsh.y"
Surface *s = FindSurface((int)yyvsp[-4].d,THEM);
if(!s)

Christophe Geuzaine
committed
yymsg(WARNING, "Unknown Surface %d", (int)yyvsp[-4].d);
s->Method = ELLIPTIC;
k = List_Nbr(yyvsp[-1].l);
if(k != 4)

Christophe Geuzaine
committed
yymsg(GERROR, "Wrong definition of Elliptic Surface %d: "
"%d points instead of 4" , yyvsp[-4].d, k) ;
else{
for(i=0;i<k;i++){
List_Read(yyvsp[-1].l,i,&d);
j = (int)fabs(d);
s->ipar[i] = j;
#line 2488 "Gmsh.y"
Volume *v = FindVolume((int)yyvsp[-4].d,THEM);
if(!v)

Christophe Geuzaine
committed
yymsg(WARNING, "Unknown Volume %d", (int)yyvsp[-4].d);
v->Method = TRANSFINI;
k = List_Nbr(yyvsp[-1].l);
if(k!=6 && k!=8)

Christophe Geuzaine
committed
yymsg(GERROR, "Wrong definition of Transfinite Volume %d: "
"%d points instead of 6 or 8" , yyvsp[-4].d, k) ;
for(i=0;i<k;i++){
List_Read(yyvsp[-1].l,i,&d);
j = (int)fabs(d);
v->ipar[i] = j;
#line 2509 "Gmsh.y"
Surface *s;
for(i=0;i<List_Nbr(yyvsp[-3].l);i++){
List_Read(yyvsp[-3].l,i,&d);
j = (int)d;
s = FindSurface(j,THEM);
s->Recombine = 1;
s->RecombineAngle = (yyvsp[-1].d > 0 && yyvsp[-1].d < 90) ? yyvsp[-1].d : 90;
#line 2523 "Gmsh.y"
{
Surface *s;
for(i=0;i<List_Nbr(yyvsp[-1].l);i++){
List_Read(yyvsp[-1].l,i,&d);
j = (int)d;
s = FindSurface(j,THEM);
s->Recombine = 1;
s->RecombineAngle = 30.;
}
;
break;}
#line 2543 "Gmsh.y"
#line 2547 "Gmsh.y"

Christophe Geuzaine
committed
case 323:
#line 2556 "Gmsh.y"
break;}

Christophe Geuzaine
committed
case 324:
#line 2557 "Gmsh.y"
break;}

Christophe Geuzaine
committed
case 325:
#line 2558 "Gmsh.y"
break;}

Christophe Geuzaine
committed
case 326:
#line 2559 "Gmsh.y"
break;}

Christophe Geuzaine
committed
case 327:
#line 2560 "Gmsh.y"
{yyval.i = -1;;

Christophe Geuzaine
committed
case 328:
#line 2564 "Gmsh.y"
{ yyval.d = yyvsp[0].d; ;

Christophe Geuzaine
committed
case 329:
#line 2565 "Gmsh.y"
{ yyval.d = yyvsp[-1].d ; ;

Christophe Geuzaine
committed
case 330:
#line 2566 "Gmsh.y"
{ yyval.d = -yyvsp[0].d ; ;

Christophe Geuzaine
committed
case 331:
#line 2567 "Gmsh.y"
{ yyval.d = yyvsp[0].d; ;

Christophe Geuzaine
committed
case 332:
#line 2568 "Gmsh.y"
{ yyval.d = !yyvsp[0].d ; ;

Christophe Geuzaine
committed
case 333:
#line 2569 "Gmsh.y"
{ yyval.d = yyvsp[-2].d - yyvsp[0].d ; ;

Christophe Geuzaine
committed
case 334:
#line 2570 "Gmsh.y"
{ yyval.d = yyvsp[-2].d + yyvsp[0].d ; ;

Christophe Geuzaine
committed
case 335:
#line 2571 "Gmsh.y"
{ yyval.d = yyvsp[-2].d * yyvsp[0].d ; ;
break;}
case 336:
#line 2573 "Gmsh.y"

Christophe Geuzaine
committed
yymsg(GERROR, "Division by zero in '%g / %g'", yyvsp[-2].d, yyvsp[0].d);
else
yyval.d = yyvsp[-2].d / yyvsp[0].d ;
;
#line 2579 "Gmsh.y"
{ yyval.d = (int)yyvsp[-2].d % (int)yyvsp[0].d ; ;
#line 2580 "Gmsh.y"
{ yyval.d = pow(yyvsp[-2].d,yyvsp[0].d) ; ;

Christophe Geuzaine
committed
case 339:
#line 2581 "Gmsh.y"
{ yyval.d = yyvsp[-2].d < yyvsp[0].d ; ;
break;}

Christophe Geuzaine
committed
case 340:
#line 2582 "Gmsh.y"
{ yyval.d = yyvsp[-2].d > yyvsp[0].d ; ;
break;}

Christophe Geuzaine
committed
case 341:
#line 2583 "Gmsh.y"
{ yyval.d = yyvsp[-2].d <= yyvsp[0].d ; ;
break;}

Christophe Geuzaine
committed
case 342:
#line 2584 "Gmsh.y"
{ yyval.d = yyvsp[-2].d >= yyvsp[0].d ; ;
break;}

Christophe Geuzaine
committed
case 343:
#line 2585 "Gmsh.y"
{ yyval.d = yyvsp[-2].d == yyvsp[0].d ; ;
break;}

Christophe Geuzaine
committed
case 344:
#line 2586 "Gmsh.y"
{ yyval.d = yyvsp[-2].d != yyvsp[0].d ; ;
break;}

Christophe Geuzaine
committed
case 345:
#line 2587 "Gmsh.y"
{ yyval.d = yyvsp[-2].d && yyvsp[0].d ; ;
break;}

Christophe Geuzaine
committed
case 346:
#line 2588 "Gmsh.y"
{ yyval.d = yyvsp[-2].d || yyvsp[0].d ; ;
break;}

Christophe Geuzaine
committed
case 347:
#line 2589 "Gmsh.y"
{ yyval.d = yyvsp[-4].d? yyvsp[-2].d : yyvsp[0].d ; ;
break;}

Christophe Geuzaine
committed
case 348:
#line 2590 "Gmsh.y"
{ yyval.d = exp(yyvsp[-1].d); ;
break;}

Christophe Geuzaine
committed
case 349:
#line 2591 "Gmsh.y"
{ yyval.d = log(yyvsp[-1].d); ;
break;}

Christophe Geuzaine
committed
case 350:
#line 2592 "Gmsh.y"
{ yyval.d = log10(yyvsp[-1].d); ;
break;}

Christophe Geuzaine
committed
case 351:
#line 2593 "Gmsh.y"
{ yyval.d = sqrt(yyvsp[-1].d); ;
break;}

Christophe Geuzaine
committed
case 352:
#line 2594 "Gmsh.y"
{ yyval.d = sin(yyvsp[-1].d); ;
break;}

Christophe Geuzaine
committed
case 353:
#line 2595 "Gmsh.y"
{ yyval.d = asin(yyvsp[-1].d); ;
break;}

Christophe Geuzaine
committed
case 354:
#line 2596 "Gmsh.y"
{ yyval.d = cos(yyvsp[-1].d); ;
break;}

Christophe Geuzaine
committed
case 355:
#line 2597 "Gmsh.y"
{ yyval.d = acos(yyvsp[-1].d); ;
break;}

Christophe Geuzaine
committed
case 356:
#line 2598 "Gmsh.y"
{ yyval.d = tan(yyvsp[-1].d); ;
break;}

Christophe Geuzaine
committed
case 357:
#line 2599 "Gmsh.y"
{ yyval.d = atan(yyvsp[-1].d); ;
break;}

Christophe Geuzaine
committed
case 358:
#line 2600 "Gmsh.y"
{ yyval.d = atan2(yyvsp[-3].d,yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 359:
#line 2601 "Gmsh.y"
{ yyval.d = sinh(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 360:
#line 2602 "Gmsh.y"
{ yyval.d = cosh(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 361:
#line 2603 "Gmsh.y"
{ yyval.d = tanh(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 362:
#line 2604 "Gmsh.y"
{ yyval.d = fabs(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 363:
#line 2605 "Gmsh.y"
{ yyval.d = floor(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 364:
#line 2606 "Gmsh.y"
{ yyval.d = ceil(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 365:
#line 2607 "Gmsh.y"
{ yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 366:
#line 2608 "Gmsh.y"
{ yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 367:
#line 2609 "Gmsh.y"
{ yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 368:
#line 2610 "Gmsh.y"
{ yyval.d = yyvsp[-1].d*(double)rand()/(double)RAND_MAX; ;

Christophe Geuzaine
committed
case 369:
#line 2612 "Gmsh.y"
{ yyval.d = exp(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 370:
#line 2613 "Gmsh.y"
{ yyval.d = log(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 371:
#line 2614 "Gmsh.y"
{ yyval.d = log10(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 372:
#line 2615 "Gmsh.y"
{ yyval.d = sqrt(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 373:
#line 2616 "Gmsh.y"
{ yyval.d = sin(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 374:
#line 2617 "Gmsh.y"
{ yyval.d = asin(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 375:
#line 2618 "Gmsh.y"
{ yyval.d = cos(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 376:
#line 2619 "Gmsh.y"
{ yyval.d = acos(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 377:
#line 2620 "Gmsh.y"
{ yyval.d = tan(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 378:
#line 2621 "Gmsh.y"
{ yyval.d = atan(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 379:
#line 2622 "Gmsh.y"
{ yyval.d = atan2(yyvsp[-3].d,yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 380:
#line 2623 "Gmsh.y"
{ yyval.d = sinh(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 381:
#line 2624 "Gmsh.y"
{ yyval.d = cosh(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 382:
#line 2625 "Gmsh.y"
{ yyval.d = tanh(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 383:
#line 2626 "Gmsh.y"
{ yyval.d = fabs(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 384:
#line 2627 "Gmsh.y"
{ yyval.d = floor(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 385:
#line 2628 "Gmsh.y"
{ yyval.d = ceil(yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 386:
#line 2629 "Gmsh.y"
{ yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 387:
#line 2630 "Gmsh.y"
{ yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 388:
#line 2631 "Gmsh.y"
{ yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ;

Christophe Geuzaine
committed
case 389:
#line 2632 "Gmsh.y"
{ yyval.d = yyvsp[-1].d*(double)rand()/(double)RAND_MAX; ;

Christophe Geuzaine
committed
case 390:
#line 2641 "Gmsh.y"
{ yyval.d = yyvsp[0].d; ;

Christophe Geuzaine
committed
case 391:
#line 2642 "Gmsh.y"
{ yyval.d = 3.141592653589793; ;

Christophe Geuzaine
committed
case 392:
#line 2643 "Gmsh.y"
{ yyval.d = ParUtil::Instance()->rank(); ;

Christophe Geuzaine
committed
case 393:
#line 2644 "Gmsh.y"
{ yyval.d = ParUtil::Instance()->size(); ;
break;}
case 394:
#line 2649 "Gmsh.y"
{
TheSymbol.Name = yyvsp[0].c ;
if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) {

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown variable '%s'", yyvsp[0].c) ;

Christophe Geuzaine
committed
else
yyval.d = *(double*)List_Pointer_Fast(pSymbol->val, 0) ;
;
break;}
#line 2660 "Gmsh.y"
{
TheSymbol.Name = yyvsp[-3].c ;
if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) {

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown variable '%s'", yyvsp[-3].c) ;
yyval.d = 0. ;
}
else{
if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)yyvsp[-1].d)))
yyval.d = *pd ;
else{

Christophe Geuzaine
committed
yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-3].c, (int)yyvsp[-1].d) ;
yyval.d = 0. ;
}
}
;
break;}
#line 2677 "Gmsh.y"
{
TheSymbol.Name = yyvsp[-1].c ;
if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) {

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown variable '%s'", yyvsp[-1].c) ;

Christophe Geuzaine
committed
else
yyval.d = (*(double*)List_Pointer_Fast(pSymbol->val, 0) += yyvsp[0].i) ;
#line 2688 "Gmsh.y"
{
TheSymbol.Name = yyvsp[-4].c ;
if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) {

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown variable '%s'", yyvsp[-4].c) ;
yyval.d = 0. ;
}
else{
if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)yyvsp[-2].d)))

Christophe Geuzaine
committed
yyval.d = (*pd += yyvsp[0].i) ;

Christophe Geuzaine
committed
yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-4].c, (int)yyvsp[-2].d) ;
yyval.d = 0. ;
}
}
;
break;}
#line 2707 "Gmsh.y"
if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-2].c))){

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-2].c);

Christophe Geuzaine
committed
if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[0].c, pNumCat))){

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown numeric option '%s.%s'", yyvsp[-2].c, yyvsp[0].c);

Christophe Geuzaine
committed
else
yyval.d = pNumOpt(0, GMSH_GET, 0);
#line 2723 "Gmsh.y"

Christophe Geuzaine
committed
if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))){

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-5].c);

Christophe Geuzaine
committed
if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[0].c, pNumCat))){

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", yyvsp[-5].c, (int)yyvsp[-3].d, yyvsp[0].c);

Christophe Geuzaine
committed
else
yyval.d = pNumOpt((int)yyvsp[-3].d, GMSH_GET, 0);
#line 2739 "Gmsh.y"
if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-3].c))){

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-3].c);

Christophe Geuzaine
committed
if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[-1].c, pNumCat))){

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown numeric option '%s.%s'", yyvsp[-3].c, yyvsp[-1].c);

Christophe Geuzaine
committed
else
yyval.d = pNumOpt(0, GMSH_SET|GMSH_GUI, pNumOpt(0, GMSH_GET, 0)+yyvsp[0].i);
#line 2755 "Gmsh.y"

Christophe Geuzaine
committed
if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-6].c))){

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-6].c);

Christophe Geuzaine
committed
if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[-1].c, pNumCat))){

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", yyvsp[-6].c, (int)yyvsp[-4].d, yyvsp[-1].c);

Christophe Geuzaine
committed
else
yyval.d = pNumOpt((int)yyvsp[-4].d, GMSH_SET|GMSH_GUI, pNumOpt((int)yyvsp[-4].d, GMSH_GET, 0)+yyvsp[0].i);
#line 2773 "Gmsh.y"
memcpy(yyval.v, yyvsp[0].v, 5*sizeof(double)) ;
#line 2777 "Gmsh.y"
{
for(i=0 ; i<5 ; i++) yyval.v[i] = -yyvsp[0].v[i] ;
#line 2781 "Gmsh.y"
for(i=0 ; i<5 ; i++) yyval.v[i] = yyvsp[0].v[i];
;
break;}
#line 2785 "Gmsh.y"
{
for(i=0 ; i<5 ; i++) yyval.v[i] = yyvsp[-2].v[i] - yyvsp[0].v[i] ;
#line 2789 "Gmsh.y"
{
for(i=0 ; i<5 ; i++) yyval.v[i] = yyvsp[-2].v[i] + yyvsp[0].v[i] ;
#line 2796 "Gmsh.y"
yyval.v[0]=yyvsp[-9].d; yyval.v[1]=yyvsp[-7].d; yyval.v[2]=yyvsp[-5].d; yyval.v[3]=yyvsp[-3].d; yyval.v[4]=yyvsp[-1].d;
;
break;}
#line 2800 "Gmsh.y"
{
yyval.v[0]=yyvsp[-7].d; yyval.v[1]=yyvsp[-5].d; yyval.v[2]=yyvsp[-3].d; yyval.v[3]=yyvsp[-1].d; yyval.v[4]=1.0;

Christophe Geuzaine
committed
case 409:
#line 2804 "Gmsh.y"
{
yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0;
;
break;}

Christophe Geuzaine
committed
case 410:
#line 2808 "Gmsh.y"
{
yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0;
;
break;}

Christophe Geuzaine
committed
case 411:
#line 2815 "Gmsh.y"

Christophe Geuzaine
committed
case 412:
#line 2818 "Gmsh.y"

Christophe Geuzaine
committed
case 413:
#line 2824 "Gmsh.y"

Christophe Geuzaine
committed
case 414:
#line 2827 "Gmsh.y"

Christophe Geuzaine
committed
case 415:
#line 2833 "Gmsh.y"

Christophe Geuzaine
committed
case 416:
#line 2836 "Gmsh.y"

Christophe Geuzaine
committed
case 417:
#line 2840 "Gmsh.y"
yyval.l=yyvsp[-1].l;

Christophe Geuzaine
committed
case 418:
#line 2847 "Gmsh.y"
yyval.l = List_Create(2,1,sizeof(List_T*)) ;
List_Add(yyval.l, &(yyvsp[0].l)) ;
;
break;}

Christophe Geuzaine
committed
case 419:
#line 2852 "Gmsh.y"
{
List_Add(yyval.l, &(yyvsp[0].l)) ;
;
break;}
case 420:
#line 2860 "Gmsh.y"
{
yyval.l = List_Create(2,1,sizeof(double)) ;
List_Add(yyval.l, &(yyvsp[0].d)) ;
;
break;}
#line 2865 "Gmsh.y"
#line 2869 "Gmsh.y"
{
yyval.l=yyvsp[-1].l;
;
break;}
#line 2873 "Gmsh.y"
{
yyval.l=yyvsp[-1].l;
for(i=0 ; i<List_Nbr(yyval.l) ; i++){
pd = (double*)List_Pointer(yyval.l, i);
(*pd) = - (*pd);
;
break;}
#line 2884 "Gmsh.y"
{
yyval.l = List_Create(2,1,sizeof(double)) ;
for(d=yyvsp[-2].d ; (yyvsp[-2].d<yyvsp[0].d)?(d<=yyvsp[0].d):(d>=yyvsp[0].d) ; (yyvsp[-2].d<yyvsp[0].d)?(d+=1.):(d-=1.))
List_Add(yyval.l, &d) ;
;
break;}
#line 2890 "Gmsh.y"
{
yyval.l = List_Create(2,1,sizeof(double)) ;
if(!yyvsp[0].d || (yyvsp[-4].d<yyvsp[-2].d && yyvsp[0].d<0) || (yyvsp[-4].d>yyvsp[-2].d && yyvsp[0].d>0)){

Christophe Geuzaine
committed
yymsg(GERROR, "Wrong increment in '%g:%g:%g'", yyvsp[-4].d, yyvsp[-2].d, yyvsp[0].d) ;
List_Add(yyval.l, &(yyvsp[-4].d)) ;
}
else
for(d=yyvsp[-4].d ; (yyvsp[0].d>0)?(d<=yyvsp[-2].d):(d>=yyvsp[-2].d) ; d+=yyvsp[0].d)
List_Add(yyval.l, &d) ;
;
break;}
#line 2901 "Gmsh.y"
{
yyval.l = List_Create(2,1,sizeof(double)) ;
if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) {

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown variable '%s'", yyvsp[-2].c) ;
d = 0.0 ;
List_Add(yyval.l, &d);
}
else{
for(i = 0 ; i < List_Nbr(pSymbol->val) ; i++)
List_Add(yyval.l, (double*)List_Pointer_Fast(pSymbol->val, i)) ;
#line 2915 "Gmsh.y"
yyval.l = List_Create(2,1,sizeof(double)) ;
TheSymbol.Name = yyvsp[-2].c ;
if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) {

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown variable '%s'", yyvsp[-2].c) ;
for(i = 0 ; i < List_Nbr(pSymbol->val) ; i++){
d = - *(double*)List_Pointer_Fast(pSymbol->val, i);
List_Add(yyval.l, &d) ;
}
#line 2931 "Gmsh.y"
{
yyval.l = List_Create(2,1,sizeof(double)) ;
TheSymbol.Name = yyvsp[-5].c ;
if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) {

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown variable '%s'", yyvsp[-5].c) ;
}
else{
for(i = 0 ; i < List_Nbr(yyvsp[-2].l) ; i++){
j = (int)(*(double*)List_Pointer_Fast(yyvsp[-2].l, i));
if((pd = (double*)List_Pointer_Test(pSymbol->val, j)))
List_Add(yyval.l, pd) ;
else

Christophe Geuzaine
committed
yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-5].c, j) ;
;
break;}
#line 2951 "Gmsh.y"
{
yyval.l = List_Create(2,1,sizeof(double)) ;
TheSymbol.Name = yyvsp[-5].c ;
if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) {

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown variable '%s'", yyvsp[-5].c) ;
}
else{
for(i = 0 ; i < List_Nbr(yyvsp[-2].l) ; i++){
j = (int)(*(double*)List_Pointer_Fast(yyvsp[-2].l, i));
if((pd = (double*)List_Pointer_Test(pSymbol->val, j))){
List_Add(yyval.l, &d) ;
}
else

Christophe Geuzaine
committed
yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-5].c, j) ;
}
}
List_Delete(yyvsp[-2].l);
;
break;}
#line 2976 "Gmsh.y"
{
yyval.l = List_Create(2,1,sizeof(double)) ;
List_Add(yyval.l, &(yyvsp[0].d)) ;
;
break;}
#line 2981 "Gmsh.y"
#line 2985 "Gmsh.y"
{
List_Add(yyval.l, &(yyvsp[0].d)) ;
;
break;}
#line 2989 "Gmsh.y"
{
for(i=0 ; i<List_Nbr(yyvsp[0].l) ; i++){
List_Read(yyvsp[0].l, i, &d) ;
List_Add(yyval.l, &d) ;
}
;
break;}
#line 3001 "Gmsh.y"
{
yyval.u = PACK_COLOR((int)yyvsp[-7].d, (int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d);
;
break;}
#line 3005 "Gmsh.y"
{
yyval.u = PACK_COLOR((int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d, 255);
;
break;}
#line 3016 "Gmsh.y"
{
yyval.u = Get_ColorForString(ColorString, -1, yyvsp[0].c, &flag);

Christophe Geuzaine
committed
if(flag) yymsg(GERROR, "Unknown color '%s'", yyvsp[0].c);
#line 3021 "Gmsh.y"
if(!(pColCat = Get_ColorOptionCategory(yyvsp[-4].c))){

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown color option class '%s'", yyvsp[-4].c);

Christophe Geuzaine
committed
if(!(pColOpt = (unsigned int (*) (int, int, unsigned int))Get_ColorOption(yyvsp[0].c, pColCat))){

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown color option '%s.Color.%s'", yyvsp[-4].c, yyvsp[0].c);

Christophe Geuzaine
committed
yyval.u = pColOpt(0,GMSH_GET,0) ;
#line 3040 "Gmsh.y"
#line 3044 "Gmsh.y"
yyval.l = List_Create(256,10,sizeof(unsigned int)) ;
GmshColorTable *ct = Get_ColorTable((int)yyvsp[-3].d);

Christophe Geuzaine
committed
if(!ct)

Christophe Geuzaine
committed
yymsg(GERROR, "View[%d] does not exist", (int)yyvsp[-3].d);

Christophe Geuzaine
committed
for(i=0 ; i<ct->size ; i++)
#line 3058 "Gmsh.y"
yyval.l = List_Create(256,10,sizeof(unsigned int)) ;
List_Add(yyval.l, &(yyvsp[0].u)) ;
#line 3063 "Gmsh.y"
#line 3070 "Gmsh.y"
{
yyval.c = yyvsp[0].c;
;
break;}
#line 3074 "Gmsh.y"
{
yyval.c = (char *)Malloc((strlen(yyvsp[-3].c)+strlen(yyvsp[-1].c)+1)*sizeof(char)) ;
strcpy(yyval.c, yyvsp[-3].c) ;
strcat(yyval.c, yyvsp[-1].c) ;
Free(yyvsp[-3].c);
Free(yyvsp[-1].c);
;
break;}
#line 3082 "Gmsh.y"
{
yyval.c = (char *)Malloc((strlen(yyvsp[-1].c)+1)*sizeof(char)) ;
for(i=strlen(yyvsp[-1].c)-1; i>=0; i--){
if(yyvsp[-1].c[i] == '.'){
strncpy(yyval.c,yyvsp[-1].c,i);
yyval.c[i]='\0';
break;
}
}
if(i<=0) strcpy(yyval.c,yyvsp[-1].c);
Free(yyvsp[-1].c);
;
break;}
#line 3095 "Gmsh.y"
{
yyval.c = yyvsp[-1].c;
;
break;}
#line 3099 "Gmsh.y"
i = PrintListOfDouble(yyvsp[-3].c,yyvsp[-1].l,tmpstring);
if(i<0){

Christophe Geuzaine
committed
yymsg(GERROR, "Too few arguments in Sprintf");

Christophe Geuzaine
committed
yymsg(GERROR, "Too many arguments (%d) in Sprintf", i);
}
else{
yyval.c = (char*)Malloc((strlen(tmpstring)+1)*sizeof(char));
strcpy(yyval.c, tmpstring);
#line 3117 "Gmsh.y"
{
if(!(pStrCat = Get_StringOptionCategory(yyvsp[-3].c)))

Christophe Geuzaine
committed
yymsg(GERROR, "Unknown string option class '%s'", yyvsp[-3].c);
else{
if(!(pStrOpt = (char *(*) (int, int, char *))Get_StringOption(yyvsp[-1].c, pStrCat)))