Commit 6b4feef2 authored by Wescoeur's avatar Wescoeur

feat(Object): do not save signals arguments in meta info

parent 6ed399a1
......@@ -356,18 +356,6 @@ constexpr StringLiteral<N> makeStringLiteral (RawStringLiteral<N> &raw) {
return StringLiteral<N>(raw);
}
// -----------------------------------------------------------------------------
// Compile-time string list.
// -----------------------------------------------------------------------------
template<std::size_t... N>
using StringLiteralList = std::tuple<StringLiteral<N>...>;
template<std::size_t... N>
constexpr StringLiteralList<N...> makeStringLiteralList (RawStringLiteral<N>& ...list) {
return std::make_tuple(StringLiteral<N>(list)...);
}
#endif // ifdef __cplusplus
LINPHONE_END_NAMESPACE
......
......@@ -82,25 +82,21 @@ namespace Private {
/*
* Meta info of one function pointer.
* Useful to get arguments number, params and function name.
* Useful to get arguments number, and function name.
*/
template<typename Function, int NameLength, typename ArgumentsTypes, typename ArgumentsNames>
template<typename Function, int NameLength>
struct FunctionInfo {
Function function;
StringLiteral<NameLength> name;
ArgumentsTypes argumentsTypes;
ArgumentsNames argumentsNames;
static constexpr int argumentsNumber = FunctionPointer<Function>::ArgumentsNumber;
};
template<typename Function, int NameLength, typename ArgumentsTypes, typename ArgumentsNames>
constexpr FunctionInfo<Function, NameLength, ArgumentsTypes, ArgumentsNames> makeFunctionInfo (
template<typename Function, int NameLength>
constexpr FunctionInfo<Function, NameLength> makeFunctionInfo (
Function function,
RawStringLiteral<NameLength> &name,
const ArgumentsTypes &argumentsTypes,
const ArgumentsNames &argumentsNames
RawStringLiteral<NameLength> &name
) {
return { function, { name }, argumentsTypes, argumentsNames };
return { function, { name } };
}
}
......
......@@ -52,9 +52,6 @@
#define L_INTERNAL_SIGNAL_INDEX(NAME, LINE) L_CONCAT(lSignalIndexOf ## _, L_CONCAT(NAME ## _, LINE))
#define L_INTERNAL_STRINGIFY(NOOP, VALUE) #VALUE
#define L_INTERNAL_STRINGIFY_LIST(...) makeStringLiteralList(L_APPLY(L_INTERNAL_STRINGIFY, , __VA_ARGS__))
// -----------------------------------------------------------------------------
// Public macros API.
// -----------------------------------------------------------------------------
......@@ -99,9 +96,7 @@
lMetaSignals(counter.prev(), context), \
std::make_tuple(LinphonePrivate::Private::makeFunctionInfo( \
L_CALL(L_RESOLVE_OVERLOAD, TYPES)(&lType::NAME), \
#NAME, \
L_INTERNAL_STRINGIFY_LIST(L_CALL(L_EXPAND_VARIADIC, TYPES)), \
L_INTERNAL_STRINGIFY_LIST(__VA_ARGS__) \
#NAME \
)) \
) \
)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment