コード例 #1
0
//----------------------------------------------------------------//
STLString USLuaSerializer::SerializeToString () {
	
	USMemStream memStream;
	this->SerializeToStream( memStream );
	memStream.Seek ( 0, SEEK_SET );
	return memStream.ToString ( memStream.GetLength ());
}
コード例 #2
0
//----------------------------------------------------------------//
void STLString::base_64_encode ( const void* buffer, u32 len ) {
	
	( *this ) = "";
	if ( !len ) return;
	
	USCipherStream cipherStream;
	USMemStream memStream;
	USBase64Cipher base64;
	
	cipherStream.OpenCipher ( memStream, base64 );
	cipherStream.WriteBytes ( buffer, len );
	cipherStream.CloseCipher ();
	
	memStream.Seek ( 0, SEEK_SET );
	( *this ) = memStream.ToString ( memStream.GetLength ());
}
コード例 #3
0
/**	@name	toCppHeader
	@text	Convert data to CPP header file.

	@overload

		@in		string data				The string data to encode
		@in		string name
		@opt	number columns			Default value is 12
		@out	string output
	
	@overload

		@in		MOAIDataBuffer data		The data buffer to encode
		@in		string name
		@opt	number columns			Default value is 12
		@out	string output
*/
int MOAIDataBuffer::_toCppHeader ( lua_State* L ) {
	MOAILuaState state ( L );
	
	cc8* name		= state.GetValue < cc8* >( 2, "" );
	u32 columns		= state.GetValue < u32 >( 3, 12 );
	
	if ( !strlen ( name )) return 0;
	
	USMemStream memStream;
	
	if ( state.IsType ( 1, LUA_TSTRING )) {
		
		size_t size;
		const void* bytes = lua_tolstring ( state, 1, &size );
		USHexDump::DumpAsCPPHeader ( memStream, name, bytes, size, columns );
	}
	
	MOAIDataBuffer* dataBuffer = state.GetLuaObject < MOAIDataBuffer >( 1, true );
	if ( dataBuffer ) {
		
		size_t size;
		void* bytes;
		dataBuffer->Lock ( &bytes, &size );
		USHexDump::DumpAsCPPHeader ( memStream, name, bytes, size, columns );
	}
	
	if ( memStream.GetLength ()) {
		
		memStream.Seek ( 0, SEEK_SET );
		STLString result = memStream.ToString ( memStream.GetLength ());
		
		lua_pushstring ( state, result );
		return 1;
	}
	return 0;
}