--- parser3/src/classes/string.C 2002/04/22 14:25:41 1.109 +++ parser3/src/classes/string.C 2002/06/25 14:28:57 1.112 @@ -4,7 +4,7 @@ Copyright (c) 2001, 2002 ArtLebedev Group (http://www.artlebedev.com) Author: Alexandr Petrosian (http://paf.design.ru) - $Id: string.C,v 1.109 2002/04/22 14:25:41 paf Exp $ + $Id: string.C,v 1.112 2002/06/25 14:28:57 paf Exp $ */ #include "classes.h" @@ -238,7 +238,6 @@ static void _match(Request& r, const Str result=new(pool) VBool(pool, matched); r.write_assign_lang(*result); } else { // replace - char* src_cstr; const String& src=*r.self->get_string(); Value& replacement_code=params->as_junction(2, "replacement param must be code"); @@ -335,7 +334,9 @@ const String* sql_result_string(Request& if(Value *voffset=(Value *)options->get(*sql_offset_name)) offset=(ulong)r.process_to_value(*voffset).as_double(); if(default_code=(Value *)options->get(*sql_default_name)) { - if(!default_code->get_junction()) + if(Junction *default_junction=default_code->get_junction()) + default_junction->change_context(statement.get_junction()); + else throw Exception("parser.runtime", &method_name, "default option must be code"); @@ -426,7 +427,7 @@ static void _save(Request& r, const Stri buf, strlen(buf), true, do_append); } -static void _optimize(Request& r, const String& method_name, MethodParams * /*params*/) { +static void _normalize(Request& r, const String& method_name, MethodParams * /*params*/) { r.write_assign_lang(r.self->get_string()->join_chains(r.pool(), 0/*cstr*/)); } @@ -480,8 +481,8 @@ MString::MString(Pool& apool) : Methoded // ^string.save[file] add_native_method("save", Method::CT_DYNAMIC, _save, 1, 2); - // ^string.optimize[] - add_native_method("optimize", Method::CT_DYNAMIC, _optimize, 0, 0); + // ^string.normalize[] + add_native_method("normalize", Method::CT_DYNAMIC, _normalize, 0, 0); } // global variable