Skip to content

Commit

Permalink
Fix VS 2015 bug
Browse files Browse the repository at this point in the history
  • Loading branch information
Yankes committed Jul 4, 2016
1 parent ad27f8d commit dcd84b0
Showing 1 changed file with 13 additions and 3 deletions.
16 changes: 13 additions & 3 deletions src/Engine/ScriptBind.h
Expand Up @@ -385,9 +385,14 @@ struct Arg<A1, A2...> : public Arg<A2...>
return curr;
}
}
template<typename A>
static ArgEnum typeHelper()
{
return A::type();
}
static ScriptRange<ArgEnum> argTypes()
{
const static ArgEnum types[ver()] = { A1::type(), A2::type()... };
const static ArgEnum types[ver()] = { typeHelper<A1>(), typeHelper<A2>()... };
return { std::begin(types), std::end(types) };
}
};
Expand Down Expand Up @@ -481,12 +486,17 @@ struct ArgColection<MaxSize, T1, T2...> : public ArgColection<MaxSize, T2...>
}
return lower * T1::ver() + curr;
}
template<typename T>
static ScriptRange<ArgEnum> argHelper()
{
return T::argTypes();
}
static ScriptRange<ScriptRange<ArgEnum>> overloadType()
{
const static ScriptRange<ArgEnum> types[MaxSize] =
{
T1::argTypes(),
T2::argTypes()...,
argHelper<T1>(),
argHelper<T2>()...,
};
return { std::begin(types), std::end(types) };
}
Expand Down

0 comments on commit dcd84b0

Please sign in to comment.