reflection invoke methods with arrays as arguments
Monkey Forums/Monkey Programming/reflection invoke methods with arrays as arguments| 
 | ||
| This has me stumped, how would I go about invoking a method like this: [bbcode] Method testMethod : Void( a : int, b : float[] ) [/bbcode] BoxInt is fine for the first parameter but how would I handle the array? I can't see how to do this from the commands in reflection. Thank you for any assistance, this is making my brain hurt! | 
| 
 | ||
| Here's a runnable example. As you're using a class, you will need to replace FunctionInfo with MethodInfo and GetFunction with GetMethod, etc. 
Strict
#REFLECTION_FILTER="*"
Import reflection
Function Main:Int()
	
	Local argumentTypes:ClassInfo[] =[IntClass(), ArrayClass("Float")]
	Local functionInfo:FunctionInfo = GetFunction("TestFunc", argumentTypes)
	
	Local myInt:Int = 42
	Local myArray:Float[] =[1.2, 3.4]
	
	functionInfo.Invoke([IntObject(myInt), ArrayBoxer<Float>.Box(myArray)])
	
	Return 0
End
Function TestFunc:Void(a:int, b:float[])
	Print "a:" + a + " b[1]:" + b[1]
End
 | 
| 
 | ||
| Thank you, ArrayBoxer was what I was looking for :) |