Mercurial > projects > ddmd
diff dmd/TypeTuple.d @ 126:1765f3ef917d
ClassDeclarations, Arguments -> Vector
author | Eldar Insafutdinov <e.insafutdinov@gmail.com> |
---|---|
date | Fri, 03 Sep 2010 23:25:55 +0100 |
parents | e28b18c23469 |
children | 60bb0fe4563e |
line wrap: on
line diff
--- a/dmd/TypeTuple.d Fri Sep 03 22:17:54 2010 +0100 +++ b/dmd/TypeTuple.d Fri Sep 03 23:25:55 2010 +0100 @@ -32,9 +32,8 @@ debug { if (arguments) { - for (size_t i = 0; i < arguments.dim; i++) + foreach (arg; arguments) { - Argument arg = cast(Argument)arguments.data[i]; assert(arg && arg.type); } } @@ -65,7 +64,7 @@ if (e.type.ty == Ttuple) e.error("cannot form tuple of tuples"); auto arg = new Argument(STCundefined, e.type, null, null); - arguments.data[i] = cast(void *)arg; + arguments[i] = arg; } } this.arguments = arguments; @@ -73,8 +72,8 @@ override Type syntaxCopy() { - Arguments args = Argument.arraySyntaxCopy(arguments); - Type t = new TypeTuple(args); + auto args = Argument.arraySyntaxCopy(arguments); + auto t = new TypeTuple(args); t.mod = mod; return t; } @@ -108,8 +107,8 @@ if (arguments.dim == tt.arguments.dim) { for (size_t i = 0; i < tt.arguments.dim; i++) - { Argument arg1 = cast(Argument)arguments.data[i]; - Argument arg2 = cast(Argument)tt.arguments.data[i]; + { auto arg1 = arguments[i]; + auto arg2 = tt.arguments[i]; if (!arg1.type.equals(arg2.type)) return 0; @@ -124,10 +123,9 @@ { if (arguments) { - for (size_t i = 0; i < arguments.dim; i++) + foreach (arg; arguments) { - Argument arg = cast(Argument)arguments.data[i]; - Type t = arg.type.reliesOnTident(); + auto t = arg.type.reliesOnTident(); if (t) return t; }