fixFunctionCalls static method
Fix function calls to pass context parameter
Implementation
static String fixFunctionCalls(String content, List<String> functionNames) {
var modifiedContent = content;
for (final funcName in functionNames) {
// Pattern: functionName() -> functionName(context)
// Pattern: functionName(args) -> functionName(context, args)
final emptyCallPattern = RegExp('\\b$funcName\\(\\s*\\)');
modifiedContent =
modifiedContent.replaceAllMapped(emptyCallPattern, (match) {
return '$funcName(context)';
});
final withArgsPattern =
RegExp('\\b$funcName\\((?!context)([^)])', multiLine: true);
modifiedContent =
modifiedContent.replaceAllMapped(withArgsPattern, (match) {
return '$funcName(context, ${match.group(1)}';
});
}
return modifiedContent;
}