--- parser3/src/classes/string.C 2004/03/01 12:53:17 1.138 +++ parser3/src/classes/string.C 2004/06/18 15:55:47 1.140 @@ -5,7 +5,7 @@ Author: Alexandr Petrosian (http://paf.design.ru) */ -static const char * const IDENT_STRING_C="$Date: 2004/03/01 12:53:17 $"; +static const char * const IDENT_STRING_C="$Date: 2004/06/18 15:55:47 $"; #include "classes.h" #include "pa_vmethod_frame.h" @@ -453,7 +453,9 @@ const String* sql_result_string(Request& statement_string.cstr(String::L_UNSPECIFIED, r.connection()); String_sql_event_handlers handlers(statement_string, statement_cstr); r.connection()->query( - statement_cstr, offset, limit, + statement_cstr, + 0, 0, + offset, limit, handlers, statement_string); @@ -552,6 +554,16 @@ static void _trim(Request& r, MethodPara r.write_assign_lang(src.trim(kind, chars)); } +static void _append(Request& r, MethodParams& params) { + // c=a+b + VString& va=GET_SELF(r, VString); + const String& a=va.string(); + const String& b=params.as_string(0, "parameter must be string"); + String& c=*new String(a); + c.append(b, String::L_PASS_APPENDED); + va.set_string(c); +} + // constructor MString::MString(): Methoded("string") { @@ -611,4 +623,7 @@ MString::MString(): Methoded("string") { // ^string.trim[[start|both|end][;chars]] add_native_method("trim", Method::CT_DYNAMIC, _trim, 0, 2); + + // ^string.append[string] + add_native_method("append", Method::CT_DYNAMIC, _append, 1, 1); }