static int _m_Write(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    byte[] _buffer = LuaAPI.lua_tobytes(L, 2);
                    int    _offset = LuaAPI.xlua_tointeger(L, 3);
                    int    _count  = LuaAPI.xlua_tointeger(L, 4);

                    gen_to_be_invoked.Write(_buffer, _offset, _count);



                    return(0);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_WriteAsync(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    byte[] _buffer = LuaAPI.lua_tobytes(L, 2);
                    int    _offset = LuaAPI.xlua_tointeger(L, 3);
                    int    _count  = LuaAPI.xlua_tointeger(L, 4);
                    System.Threading.CancellationToken _cancellationToken; translator.Get(L, 5, out _cancellationToken);

                    System.Threading.Tasks.Task gen_ret = gen_to_be_invoked.WriteAsync(_buffer, _offset, _count, _cancellationToken);
                    translator.Push(L, gen_ret);



                    return(1);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int __CreateInstance(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);
                if (LuaAPI.lua_gettop(L) == 3 && translator.Assignable <System.IO.Stream>(L, 2) && LuaTypes.LUA_TBOOLEAN == LuaAPI.lua_type(L, 3))
                {
                    System.IO.Stream _stream     = (System.IO.Stream)translator.GetObject(L, 2, typeof(System.IO.Stream));
                    bool             _ownsStream = LuaAPI.lua_toboolean(L, 3);

                    MongoDB.Bson.IO.BsonStreamAdapter gen_ret = new MongoDB.Bson.IO.BsonStreamAdapter(_stream, _ownsStream);
                    translator.Push(L, gen_ret);

                    return(1);
                }
                if (LuaAPI.lua_gettop(L) == 2 && translator.Assignable <System.IO.Stream>(L, 2))
                {
                    System.IO.Stream _stream = (System.IO.Stream)translator.GetObject(L, 2, typeof(System.IO.Stream));

                    MongoDB.Bson.IO.BsonStreamAdapter gen_ret = new MongoDB.Bson.IO.BsonStreamAdapter(_stream);
                    translator.Push(L, gen_ret);

                    return(1);
                }
            }
            catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
            return(LuaAPI.luaL_error(L, "invalid arguments to MongoDB.Bson.IO.BsonStreamAdapter constructor!"));
        }
        static int _m_CopyToAsync(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    System.IO.Stream _destination = (System.IO.Stream)translator.GetObject(L, 2, typeof(System.IO.Stream));
                    int _bufferSize = LuaAPI.xlua_tointeger(L, 3);
                    System.Threading.CancellationToken _cancellationToken; translator.Get(L, 4, out _cancellationToken);

                    System.Threading.Tasks.Task gen_ret = gen_to_be_invoked.CopyToAsync(_destination, _bufferSize, _cancellationToken);
                    translator.Push(L, gen_ret);



                    return(1);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_BeginWrite(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    byte[] _buffer = LuaAPI.lua_tobytes(L, 2);
                    int    _offset = LuaAPI.xlua_tointeger(L, 3);
                    int    _count  = LuaAPI.xlua_tointeger(L, 4);
                    System.AsyncCallback _callback = translator.GetDelegate <System.AsyncCallback>(L, 5);
                    object _state = translator.GetObject(L, 6, typeof(object));

                    System.IAsyncResult gen_ret = gen_to_be_invoked.BeginWrite(_buffer, _offset, _count, _callback, _state);
                    translator.PushAny(L, gen_ret);



                    return(1);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_Seek(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    long _offset = LuaAPI.lua_toint64(L, 2);
                    System.IO.SeekOrigin _origin; translator.Get(L, 3, out _origin);

                    long gen_ret = gen_to_be_invoked.Seek(_offset, _origin);
                    LuaAPI.lua_pushint64(L, gen_ret);



                    return(1);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _g_get_BaseStream(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);

                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);
                translator.Push(L, gen_to_be_invoked.BaseStream);
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
            return(1);
        }
        static int _s_set_WriteTimeout(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);

                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);
                gen_to_be_invoked.WriteTimeout = LuaAPI.xlua_tointeger(L, 2);
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
            return(0);
        }
        static int _m_SkipCString(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    gen_to_be_invoked.SkipCString(  );



                    return(0);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_ReadInt32(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    int gen_ret = gen_to_be_invoked.ReadInt32(  );
                    LuaAPI.xlua_pushinteger(L, gen_ret);



                    return(1);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_ReadSlice(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    MongoDB.Bson.IO.IByteBuffer gen_ret = gen_to_be_invoked.ReadSlice(  );
                    translator.PushAny(L, gen_ret);



                    return(1);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_WriteObjectId(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    MongoDB.Bson.ObjectId _value; translator.Get(L, 2, out _value);

                    gen_to_be_invoked.WriteObjectId(_value);



                    return(0);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_EndWrite(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    System.IAsyncResult _asyncResult = (System.IAsyncResult)translator.GetObject(L, 2, typeof(System.IAsyncResult));

                    gen_to_be_invoked.EndWrite(_asyncResult);



                    return(0);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_SetLength(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    long _value = LuaAPI.lua_toint64(L, 2);

                    gen_to_be_invoked.SetLength(_value);



                    return(0);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_WriteString(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    string _value = LuaAPI.lua_tostring(L, 2);
                    System.Text.UTF8Encoding _encoding = (System.Text.UTF8Encoding)translator.GetObject(L, 3, typeof(System.Text.UTF8Encoding));

                    gen_to_be_invoked.WriteString(_value, _encoding);



                    return(0);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_FlushAsync(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    System.Threading.CancellationToken _cancellationToken; translator.Get(L, 2, out _cancellationToken);

                    System.Threading.Tasks.Task gen_ret = gen_to_be_invoked.FlushAsync(_cancellationToken);
                    translator.Push(L, gen_ret);



                    return(1);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
        static int _m_ReadString(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                MongoDB.Bson.IO.BsonStreamAdapter gen_to_be_invoked = (MongoDB.Bson.IO.BsonStreamAdapter)translator.FastGetCSObj(L, 1);



                {
                    System.Text.UTF8Encoding _encoding = (System.Text.UTF8Encoding)translator.GetObject(L, 2, typeof(System.Text.UTF8Encoding));

                    string gen_ret = gen_to_be_invoked.ReadString(_encoding);
                    LuaAPI.lua_pushstring(L, gen_ret);



                    return(1);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }