Mercurial > projects > ddmd
comparison dmd/IsExp.d @ 121:347de076ad34
TemplateParameters -> Vector
author | Eldar Insafutdinov <e.insafutdinov@gmail.com> |
---|---|
date | Thu, 02 Sep 2010 22:41:12 +0100 |
parents | e28b18c23469 |
children | 767a01c2a272 |
comparison
equal
deleted
inserted
replaced
120:46ef67271ef3 | 121:347de076ad34 |
---|---|
63 { | 63 { |
64 p = new TemplateParameters(); | 64 p = new TemplateParameters(); |
65 p.setDim(parameters.dim); | 65 p.setDim(parameters.dim); |
66 for (int i = 0; i < p.dim; i++) | 66 for (int i = 0; i < p.dim; i++) |
67 { | 67 { |
68 TemplateParameter tp = cast(TemplateParameter)parameters.data[i]; | 68 auto tp = parameters[i]; |
69 p.data[i] = cast(void*)tp.syntaxCopy(); | 69 p[i] = tp.syntaxCopy(); |
70 } | 70 } |
71 } | 71 } |
72 | 72 |
73 return new IsExp(loc, | 73 return new IsExp(loc, |
74 targ.syntaxCopy(), | 74 targ.syntaxCopy(), |
264 | 264 |
265 /* Declare trailing parameters | 265 /* Declare trailing parameters |
266 */ | 266 */ |
267 for (int i = 1; i < parameters.dim; i++) | 267 for (int i = 1; i < parameters.dim; i++) |
268 { | 268 { |
269 TemplateParameter tp = cast(TemplateParameter)parameters.data[i]; | 269 auto tp = parameters[i]; |
270 Declaration s = null; | 270 Declaration s = null; |
271 | 271 |
272 m = tp.matchArg(sc, tiargs, i, parameters, dedtypes, &s); | 272 m = tp.matchArg(sc, tiargs, i, parameters, dedtypes, &s); |
273 if (m == MATCHnomatch) | 273 if (m == MATCHnomatch) |
274 goto Lno; | 274 goto Lno; |
357 { | 357 { |
358 // First parameter is already output, so start with second | 358 // First parameter is already output, so start with second |
359 for (int i = 1; i < parameters.dim; i++) | 359 for (int i = 1; i < parameters.dim; i++) |
360 { | 360 { |
361 buf.writeByte(','); | 361 buf.writeByte(','); |
362 TemplateParameter tp = cast(TemplateParameter)parameters.data[i]; | 362 auto tp = parameters[i]; |
363 tp.toCBuffer(buf, hgs); | 363 tp.toCBuffer(buf, hgs); |
364 } | 364 } |
365 } | 365 } |
366 } | 366 } |
367 buf.writeByte(')'); | 367 buf.writeByte(')'); |