35 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
		
		
			
		
	
	
			35 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
|  | /*=========================================================================*\
 | ||
|  | * Input/Output abstraction | ||
|  | * LuaSocket toolkit | ||
|  | \*=========================================================================*/ | ||
|  | #include "io.h"
 | ||
|  | 
 | ||
|  | namespace NS_SLUA {     | ||
|  | 
 | ||
|  | /*=========================================================================*\
 | ||
|  | * Exported functions | ||
|  | \*=========================================================================*/ | ||
|  | /*-------------------------------------------------------------------------*\
 | ||
|  | * Initializes C structure | ||
|  | \*-------------------------------------------------------------------------*/ | ||
|  | void io_init(p_io io, p_send send, p_recv recv, p_error error, void *ctx) { | ||
|  |     io->send = send; | ||
|  |     io->recv = recv; | ||
|  |     io->error = error; | ||
|  |     io->ctx = ctx; | ||
|  | } | ||
|  | 
 | ||
|  | /*-------------------------------------------------------------------------*\
 | ||
|  | * I/O error strings | ||
|  | \*-------------------------------------------------------------------------*/ | ||
|  | const char *io_strerror(int err) { | ||
|  |     switch (err) { | ||
|  |         case IO_DONE: return NULL; | ||
|  |         case IO_CLOSED: return "closed"; | ||
|  |         case IO_TIMEOUT: return "timeout"; | ||
|  |         default: return "unknown error";  | ||
|  |     } | ||
|  | } | ||
|  | 
 | ||
|  | } // end NS_SLUA
 |