public static int CaculateNextFlushTime_s(IntPtr l)
    {
        int result;

        try
        {
            BuyRuleType rule;
            LuaObject.checkEnum <BuyRuleType>(l, 1, out rule);
            int param;
            LuaObject.checkType(l, 2, out param);
            DateTime currentTime;
            LuaObject.checkValueType <DateTime>(l, 3, out currentTime);
            long oldNextFlushTimeTicks;
            LuaObject.checkType(l, 4, out oldNextFlushTimeTicks);
            DateTime dateTime = GoodsNextFlushCaculateTools.CaculateNextFlushTime(rule, param, currentTime, oldNextFlushTimeTicks);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, dateTime);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int constructor(IntPtr l)
    {
        int result;

        try
        {
            GoodsNextFlushCaculateTools o = new GoodsNextFlushCaculateTools();
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, o);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }