1.静态成员函数用.访问,扩展函数是静态的,但用:访问
c#
[LuaCallCSharp]
public static class DerivedClassExtensions
{
public static int GetSomeData(this DerivedClass obj)
{
Debug.Log("GetSomeData ret = " + obj.DMF);
return obj.DMF;
}
lua
--Extension methods
print(testobj:GetSomeData())
print(testobj:GetSomeBaseData()) --访问基类的Extension methods
testobj:GenericMethodOfString() --通过Extension methods实现访问泛化方法
2.枚举支持从string或者int的类型转换 __CastFrom
c#
[LuaCallCSharp]
public enum TestEnum
{
E1,
E2
}
lua
print(CS.Tutorial.TestEnum.__CastFrom(1), CS.Tutorial.TestEnum.__CastFrom('E1'))
3.delegate支持+,-操作
c#
public Action<string> TestDelegate &