1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
<%
/*
* Copyright (C) 2005-2018 Team Kodi
* This file is part of Kodi - https://kodi.tv
*
* SPDX-License-Identifier: GPL-2.0-or-later
* See LICENSES/README.md for more information.
*/
boolean ispointer = swigTypeParser.SwigType_ispointer(ltype)
String accessor = ispointer ? '->' : '.'
int seq = sequence.increment()
altAccess = [ 'former', 'later' ]
altSwitch = [ 'first', 'second' ]
List types = swigTypeParser.SwigType_templateparmlist(ltype)
%>
{
// we need to check the parameter type and see if it matches
PyObject *pyentry_${seq} = ${slarg};
try
{
${swigTypeParser.SwigType_str(swigTypeParser.SwigType_ltype(types[0]))} entry0_${seq};
${helper.getInConversion(types[0], 'entry0' + '_' + seq, 'pyentry' + '_' + seq, method,
[ 'sequence' : sequence ])}
${api}${accessor}${altAccess[0]}() = entry0_${seq};
}
catch (const XBMCAddon::WrongTypeException&)
{
try
{
${swigTypeParser.SwigType_str(swigTypeParser.SwigType_ltype(types[1]))} entry1_${seq};
${helper.getInConversion(types[1], 'entry1' + '_' + seq, 'pyentry' + '_' + seq, method,
[ 'sequence' : sequence ])}
${api}${accessor}${altAccess[1]}() = entry1_${seq};
}
catch (const XBMCAddon::WrongTypeException&)
{
throw XBMCAddon::WrongTypeException("Failed to convert to input type to either a "
"${swigTypeParser.SwigType_ltype(types[0])} or a "
"${swigTypeParser.SwigType_ltype(types[1])}" );
}
}
}
|