Header file types/args.hpp

namespace brigand
{
    template <std::size_t Index>
    struct args
    {
    };
    
    struct _1
    {
    };
    
    struct _2
    {
    };
    
    using _3 = args<2>;
    
    using _4 = args<3>;
    
    using _5 = args<4>;
    
    using _6 = args<5>;
    
    using _7 = args<6>;
    
    using _8 = args<7>;
    
    using _9 = args<8>;
    
    using _state = _1;
    
    using _element = _2;
}