/*
* Created by LuaView.
* Copyright (c) 2017, Alibaba Group. All rights reserved.
*
* This source code is licensed under the MIT.
* For the full copyright and license information,please view the LICENSE file in the root directory of this source tree.
*/
package com.taobao.luaview.fun.binder.kit;
import com.taobao.luaview.fun.base.BaseFunctionBinder;
import com.taobao.luaview.fun.base.BaseVarArgCreator;
import com.taobao.luaview.userdata.kit.UDUnicode;
import org.luaj.vm2.Globals;
import org.luaj.vm2.LuaValue;
import org.luaj.vm2.Varargs;
import org.luaj.vm2.lib.LibFunction;
/**
* Unicode 接口封装
*
* @author song
* @date 15/8/21
*/
public class UnicodeBinder extends BaseFunctionBinder {
public UnicodeBinder() {
super("Unicode");
}
@Override
public Class<? extends LibFunction> getMapperClass() {
return null;
}
@Override
public LuaValue createCreator(LuaValue env, final LuaValue metaTable) {
return new BaseVarArgCreator(env.checkglobals(), metaTable, getMapperClass()) {
@Override
public LuaValue createUserdata(Globals globals, LuaValue metaTable, Varargs varargs) {
return new UDUnicode(globals, metaTable, varargs).getUnicode();//直接返回一个string,而不是对象,这样就可以在代码中直接加了
}
};
}
}