--- parser3/src/classes/string.C 2001/04/26 14:55:13 1.40 +++ parser3/src/classes/string.C 2001/04/27 15:19:24 1.40.2.1 @@ -5,20 +5,28 @@ Author: Alexander Petrosyan (http://design.ru/paf) - $Id: string.C,v 1.40 2001/04/26 14:55:13 paf Exp $ + $Id: string.C,v 1.40.2.1 2001/04/27 15:19:24 paf Exp $ */ +#include "classes.h" #include "pa_request.h" -#include "_string.h" #include "pa_vdouble.h" #include "pa_vint.h" #include "pa_vtable.h" #include "pa_vbool.h" #include "pa_string.h" -// global var +// defines -VStateless_class *string_class; +#define STRING_CLASS_NAME "string" + +// class + +class MString : public Methoded { +public: + MString(Pool& pool); + bool used_directly() { return false; } +}; // methods @@ -227,9 +235,12 @@ static void _match(Request& r, const Str r.write_assign_lang(*result); } -// initialize +// constructor + +MString::MString(Pool& pool, VStateless_class& vclass) { + set_name(new(pool) String(pool, STRING_CLASS_NAME)); + -void initialize_string_class(Pool& pool, VStateless_class& vclass) { // ^string.length[] vclass.add_native_method("length", Method::CT_DYNAMIC, _length, 0, 0); @@ -262,3 +273,12 @@ void initialize_string_class(Pool& pool, vclass.add_native_method("match", Method::CT_DYNAMIC, _match, 1, 3); } +// global variable + +Methoded *string_class; + +// creator + +Methoded *MTable_create(Pool& pool) { + return string_class=new(pool) MString(pool); +}