OpenSim.Region.ScriptEngine.../src/LUA/Method/MethodCache.cs

42 lines
953 B
C#

using System;
using System.Reflection;
using NLua.Extensions;
namespace NLua.Method
{
class MethodCache
{
public MethodCache()
{
args = new object[0];
argTypes = new MethodArgs[0];
outList = new int[0];
}
private MethodBase _cachedMethod;
public MethodBase cachedMethod {
get
{
return _cachedMethod;
}
set
{
_cachedMethod = value;
var mi = value as MethodInfo;
if (mi != null)
{
IsReturnVoid = mi.ReturnType == typeof(void);
}
}
}
public bool IsReturnVoid;
// List or arguments
public object[] args;
// Positions of out parameters
public int[] outList;
// Types of parameters
public MethodArgs[] argTypes;
}
}