Example #1
0
        protected override bool _OnInit(string v_strCellVal)
        {
            _key = v_strCellVal;
            Lua.Lua lua_state = LuaState.Get_Instenct();
            object  lua_data  = null;
            var     tmprst    = lua_state.DoString("return " + v_strCellVal);

            if (tmprst == null)
            {
                Debug.ExcelError("return " + v_strCellVal + " is nil");
                return(false);
            }
            lua_data = tmprst[0];
            if (lua_data == null)
            {
                _luaval = new LuaNil();
                return(true);
            }
            else if (lua_data is Lua.LuaTable)
            {
                Lua.LuaTable table = lua_data as Lua.LuaTable;
                LuaMap       map   = new LuaMap();
                map.init(_isStretch, ExportSheetBin.ROW_MAX_ELEMENT);
                if (!fill_luatable(map, table))
                {
                    _luaval = new LuaNil();
                    return(false);
                }
                _luaval = map;
                return(true);
            }
            else if (lua_data is double)
            {
                _luaval = new LuaDouble(Convert.ToDouble(lua_data));
                return(true);
            }
            else if (lua_data is string)
            {
                _luaval = new LuaString(Convert.ToString(lua_data));
                return(true);
            }
            else if (lua_data is bool)
            {
                _luaval = new LuaBoolean(Convert.ToBoolean(lua_data));
                return(true);
            }

            return(false);
        }
Example #2
0
 public static Lua.Lua Init(string v_main)
 {
     lua_instence = new Lua.Lua();
     lua_instence.DoFile(v_main);
     return(lua_instence);
 }