/** @name inflate @text Decompresses the string or the current data stored in this object using the DEFLATE algorithm. @opt MOAIDataBuffer self @opt string data The string data to inflate. You must either provide either a MOAIDataBuffer (via a :base64Decode type call) or string data (via a .base64Decode type call), but not both. @in number windowBits The window bits used in the DEFLATE algorithm. Pass nil to use the default value. @out string output If passed a string, returns either a string or nil depending on whether it could be decompressed. Otherwise the decompression occurs inline on the existing data buffer in this object, and nil is returned. */ int MOAIDataBuffer::_inflate ( lua_State* L ) { MOAILuaState state ( L ); int windowBits = state.GetValue < int >( 2, USDeflateReader::DEFAULT_WBITS ); if ( state.IsType ( 1, LUA_TSTRING )) { return state.Inflate ( 1, windowBits ) ? 1 : 0; } MOAIDataBuffer* self = state.GetLuaObject < MOAIDataBuffer >( 1, true ); if ( self ) { self->Inflate ( windowBits ); } return 0; }