/* ** Register the echo virtual table module. */ static int register_echo_module( ClientData clientData, /* Pointer to sqlite3_enable_XXX function */ Tcl_Interp interp, /* The TCL interpreter that invoked this command */ int objc, /* Number of arguments */ Tcl_Obj[] objv /* Command arguments */ ) { sqlite3 db = null; ; ; EchoModule pMod; if ( objc != 2 ) { TCL.Tcl_WrongNumArgs( interp, 1, objv, "DB" ); return TCL.TCL_ERROR; } if ( getDbPointer( interp, TCL.Tcl_GetString( objv[1] ), out db ) != 0 ) return TCL.TCL_ERROR; pMod = new EchoModule();//sqlite3_malloc(sizeof(EchoModule)); pMod.interp = interp; sqlite3_create_module_v2( db, "echo", echoModule, pMod, moduleDestroy ); return TCL.TCL_OK; }