--- parser3/src/classes/op.C 2001/08/09 14:27:49 1.38 +++ parser3/src/classes/op.C 2001/09/26 10:32:25 1.45 @@ -2,10 +2,10 @@ Parser: parser @b operators. Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) - Author: Alexander Petrosyan (http://design.ru/paf) + + $Id: op.C,v 1.45 2001/09/26 10:32:25 parser Exp $ */ -static const char *RCSId="$Id: op.C,v 1.38 2001/08/09 14:27:49 parser Exp $"; #include "classes.h" #include "pa_config_includes.h" @@ -22,9 +22,6 @@ static const char *RCSId="$Id: op.C,v 1. #define OP_CLASS_NAME "OP" -#define MAIN_SQL_NAME "SQL" -#define MAIN_SQL_DRIVERS_NAME "drivers" - // class class MOP : public Methoded { @@ -110,7 +107,7 @@ static void _process(Request& r, const S origin.file, 1+origin.line, method_name.cstr()); #else - strncpy(place, MAX_STRING, method_name.cstr()); + strncpy(place, method_name.cstr(), MAX_STRING-1); place[MAX_STRING-1]=0; #endif VStateless_class& self_class=*r.self->get_class(); @@ -189,7 +186,7 @@ static void _for(Request& r, const Strin &method_name, "endless loop detected"); vint->set_int(i); - r.root->put_element(var_name, vint); + r.self/*root*/->put_element(var_name, vint); Value& processed_body=r.process(body_code); if(delim_code) { // delimiter set? @@ -221,7 +218,7 @@ static void _eval(Request& r, const Stri } -static void _connect(Request& r, const String&, MethodParams *params) { +static void _connect(Request& r, const String& method_name, MethodParams *params) { Pool& pool=r.pool(); Value& url=params->as_no_junction(0, "url must not be code"); @@ -232,7 +229,7 @@ static void _connect(Request& r, const S // connect SQL_Connection& connection=SQL_driver_manager->get_connection( - url.as_string(), protocol2driver_and_client); + url.as_string(), method_name, protocol2driver_and_client); Exception rethrow_me; // remember/set current connection @@ -270,12 +267,13 @@ static void _connect(Request& r, const S rethrow_me.comment()); } +#ifndef DOXYGEN struct Switch_data { Value *searching; Value *found; Value *_default; }; - +#endif static void _switch(Request& r, const String&, MethodParams *params) { void *backup=r.classes_conf.get(*switch_data_name); Switch_data data={&r.process(params->get(0))};