using System; using System.Collections; using System.Reflection; namespace UnityEngine { #if ENABLE_MONO || UNITY_WP8 internal class SetupCoroutine { static public object InvokeMember (object behaviour, string name, object variable) { object[] args = null; if (variable != null) { args = new System.Object[1]; args[0] = variable; } return behaviour.GetType ().InvokeMember (name, BindingFlags.InvokeMethod | BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public, null, behaviour, args, null, null, null); } static public object InvokeStatic (Type klass, string name, object variable) { object[] args = null; if (variable != null) { args = new System.Object[1]; args[0] = variable; } return klass.InvokeMember (name, BindingFlags.InvokeMethod | BindingFlags.Static | BindingFlags.NonPublic | BindingFlags.Public, null, null, args, null, null, null); } } #endif }