comparison trunk/src/Expressions.d @ 144:cfd890b250e6

- Added bool parameter to parseBaseClasses. BaseClasses in anonymous classes don't start with a colon. - Implemented parseNewExpression().
author aziz
date Thu, 12 Jul 2007 10:24:02 +0000
parents 96468715ea79
children 753bc07bf3a0
comparison
equal deleted inserted replaced
143:e760d7552f66 144:cfd890b250e6
316 } 316 }
317 } 317 }
318 318
319 class NewExpression : UnaryExpression 319 class NewExpression : UnaryExpression
320 { 320 {
321 this(Expression e) 321 Expression[] newArgs;
322 { super(e); } 322 Type type;
323 Expression[] ctorArgs;
324 this(Expression e, Expression[] newArgs, Type type, Expression[] ctorArgs)
325 {
326 super(e);
327 this.newArgs = newArgs;
328 this.type = type;
329 this.ctorArgs = ctorArgs;
330 }
331 }
332
333 class NewAnonClassExpression : UnaryExpression
334 {
335 Expression[] newArgs;
336 BaseClass[] bases;
337 Expression[] ctorArgs;
338 Declaration[] decls;
339 this(Expression e, Expression[] newArgs, BaseClass[] bases, Expression[] ctorArgs, Declaration[] decls)
340 {
341 super(e);
342 this.newArgs = newArgs;
343 this.bases = bases;
344 this.ctorArgs = ctorArgs;
345 this.decls = decls;
346 }
323 } 347 }
324 348
325 class DeleteExpression : UnaryExpression 349 class DeleteExpression : UnaryExpression
326 { 350 {
327 this(Expression e) 351 this(Expression e)
334 this(Expression e, Type type) 358 this(Expression e, Type type)
335 { 359 {
336 super(e); 360 super(e);
337 this.type = type; 361 this.type = type;
338 } 362 }
339 }
340
341 class AnonClassExpression : UnaryExpression
342 {
343 this(Expression e)
344 { super(e); }
345 } 363 }
346 364
347 class IndexExpression : UnaryExpression 365 class IndexExpression : UnaryExpression
348 { 366 {
349 Expression[] args; 367 Expression[] args;