comparison trunk/src/Expressions.d @ 305:df237b3b5f09

- Added class Declarations. - Changed many methods to return Declarations instead of Declaration[]. Changed members of classes accordingly.
author aziz
date Tue, 14 Aug 2007 12:18:01 +0000
parents 559d5d62e0c1
children b4d842b0d2c7
comparison
equal deleted inserted replaced
304:fc7b9a3a99d4 305:df237b3b5f09
495 class NewAnonClassExpression : /*Unary*/Expression 495 class NewAnonClassExpression : /*Unary*/Expression
496 { 496 {
497 Expression[] newArgs; 497 Expression[] newArgs;
498 BaseClass[] bases; 498 BaseClass[] bases;
499 Expression[] ctorArgs; 499 Expression[] ctorArgs;
500 Declaration[] decls; 500 Declarations decls;
501 this(/*Expression e, */Expression[] newArgs, BaseClass[] bases, Expression[] ctorArgs, Declaration[] decls) 501 this(/*Expression e, */Expression[] newArgs, BaseClass[] bases, Expression[] ctorArgs, Declarations decls)
502 { 502 {
503 /*super(e);*/ 503 /*super(e);*/
504 mixin(set_kind); 504 mixin(set_kind);
505 if (newArgs.length) 505 if (newArgs.length)
506 this.children ~= newArgs; 506 this.children ~= newArgs;
507 if (bases.length) 507 if (bases.length)
508 this.children ~= bases; 508 this.children ~= bases;
509 if (ctorArgs.length) 509 if (ctorArgs.length)
510 this.children ~= ctorArgs; 510 this.children ~= ctorArgs;
511 if (decls.length) 511 this.children ~= decls;
512 this.children ~= decls; 512
513 this.newArgs = newArgs; 513 this.newArgs = newArgs;
514 this.bases = bases; 514 this.bases = bases;
515 this.ctorArgs = ctorArgs; 515 this.ctorArgs = ctorArgs;
516 this.decls = decls; 516 this.decls = decls;
517 } 517 }