/** @name base64Encode @text If a string is provided, encodes it in base64. Otherwise, encodes the current data stored in this object as a base64 encoded sequence of characters. @opt MOAIDataBuffer self @opt string data The string data to encode. You must either provide either a MOAIDataBuffer (via a :base64Encode type call) or string data (via a .base64Encode type call), but not both. @out string output If passed a string, returns either a string or nil depending on whether it could be encoded. Otherwise the encoding occurs inline on the existing data buffer in this object, and nil is returned. */ int MOAIDataBuffer::_base64Encode ( lua_State* L ) { MOAILuaState state ( L ); if ( state.IsType ( 1, LUA_TSTRING )) { return state.Base64Encode ( 1 ) ? 1 : 0; } MOAIDataBuffer* self = state.GetLuaObject < MOAIDataBuffer >( 1, true ); if ( self ) { if ( state.IsType ( 2, LUA_TSTRING )) { size_t len; cc8* str = lua_tolstring ( state, 2, &len ); self->Load (( void* )str, len ); } self->Base64Encode (); } return 0; }