comparison trunk/src/dil/Declarations.d @ 492:9c208925a3d4

Added module ImportParser and new stuff from DMD2.008. Moved ImportParser from module Parser to its own module. Added a few methods from class Parser and simplified them. Now protection attributes are taken into consideration as well. Added class TemplateThisParameter. Adapted TypeofType so that typeof(return) can be recognized.
author Aziz K?ksal <aziz.koeksal@gmail.com>
date Thu, 06 Dec 2007 22:19:55 +0100
parents 47be6bfe39cd
children 9a7ca8c56e59
comparison
equal deleted inserted replaced
491:b991f49628a8 492:9c208925a3d4
347 Type returnType; 347 Type returnType;
348 Token* funcName; 348 Token* funcName;
349 TemplateParameters tparams; 349 TemplateParameters tparams;
350 Parameters params; 350 Parameters params;
351 FunctionBody funcBody; 351 FunctionBody funcBody;
352 this(Type returnType, Token* funcName, TemplateParameters tparams, Parameters params, FunctionBody funcBody) 352 this(Type returnType, Token* funcName, TemplateParameters tparams,
353 Parameters params, FunctionBody funcBody, StorageClass stc)
353 { 354 {
354 super.hasBody = funcBody.funcBody !is null; 355 super.hasBody = funcBody.funcBody !is null;
355 mixin(set_kind); 356 mixin(set_kind);
356 addChild(returnType); 357 addChild(returnType);
357 addOptChild(tparams); 358 addOptChild(tparams);
358 addChild(params); 359 addChild(params);
359 addChild(funcBody); 360 addChild(funcBody);
360 361
362 this.stc = stc;
361 this.returnType = returnType; 363 this.returnType = returnType;
362 this.funcName = funcName; 364 this.funcName = funcName;
363 this.tparams = tparams; 365 this.tparams = tparams;
364 this.params = params; 366 this.params = params;
365 this.funcBody = funcBody; 367 this.funcBody = funcBody;