On Wednesday, 6 November 2013 at 19:56:19 UTC, Dicebot wrote:
module aaa;

import std.string;

template Alias(alias S)
{
        alias Alias = S;
}

void main()
{
        import std.string;
        
        foreach (symbol_name; __traits(allMembers, aaa))
        {
                alias symbol = Alias!(__traits(getMember, aaa, symbol_name));
                static if (symbol.stringof.startsWith("module "))
                {
                }
                else static if (symbol.stringof.startsWith("package "))
                {
                        // recursion
                }
        }
}

Unfortunately this still suffers the same problem in that you need a module symbol name to do anything. I need to get all module symbols at compile time.

Reply via email to