LLSDParam<LLSD> is the generic case, when we need to pass LLSDParam adapters to some set of function parameters whose types we don't specifically know. Its templated conversion operator notices the actual parameter type T and delegates conversion to the specific LLSDParam<T> specialization. But when T has picked up references, e.g. somewhere along the way in the LL::apply() machinery, the compiler might not choose the desired conversion because we don't have a sufficiently specific LLSDParam specialization. LLSDParam<LLSD> can address that by using std::decay_t<T> when delegating to the specific LLSDParam specialization. This removes references, const and volatile. |
||
|---|---|---|
| .. | ||
| cmake | ||
| copy_win_scripts | ||
| doxygen | ||
| integration_tests | ||
| lib/python/indra | ||
| linux_crash_logger | ||
| llappearance | ||
| llaudio | ||
| llcharacter | ||
| llcommon | ||
| llcorehttp | ||
| llcrashlogger | ||
| llfilesystem | ||
| llimage | ||
| llimagej2coj | ||
| llinventory | ||
| llkdu | ||
| llmath | ||
| llmeshoptimizer | ||
| llmessage | ||
| llplugin | ||
| llprimitive | ||
| llrender | ||
| llui | ||
| llwindow | ||
| llxml | ||
| media_plugins | ||
| newview | ||
| test | ||
| tools/vstool | ||
| viewer_components | ||
| win_crash_logger | ||
| CMakeLists.txt | ||
| edit-me-to-trigger-new-build.txt | ||
| fix-incredibuild.py | ||