tryExecuteClassFunction method
Tries to execute a class function with variations of positionalParameters
.
Implementation
Future<ASTValue?> tryExecuteClassFunction(
String namespace, String className, String functionName,
[List? positionalParameters]) async {
positionalParameters ??= [];
if (await getClassMethod(
namespace, className, functionName, positionalParameters) !=
null) {
return await executeClassMethod(namespace, className, functionName,
positionalParameters: positionalParameters);
} else if (await getClassMethod(
namespace, className, functionName, [positionalParameters]) !=
null) {
return await executeClassMethod(namespace, className, functionName,
positionalParameters: [positionalParameters]);
} else if (await getClassMethod(namespace, className, functionName,
[ASTTypeArray.instanceOfString]) !=
null) {
return await executeClassMethod(namespace, className, functionName,
positionalParameters: [
positionalParameters.map((e) => '$e').toList()
]);
} else if (await getClassMethod(namespace, className, functionName,
[ASTTypeArray.instanceOfDynamic]) !=
null) {
return await executeClassMethod(namespace, className, functionName,
positionalParameters: [positionalParameters]);
}
return null;
}