--- parser3/src/classes/form.C 2001/03/13 17:54:12 1.1 +++ parser3/src/classes/form.C 2001/04/28 08:43:47 1.4 @@ -1,30 +1,43 @@ -/* - Parser +/** @file + Parser: @b form parser class. + Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) + Author: Alexander Petrosyan (http://design.ru/paf) - $Id: form.C,v 1.1 2001/03/13 17:54:12 paf Exp $ + $Id: form.C,v 1.4 2001/04/28 08:43:47 paf Exp $ */ +#include "classes.h" #include "pa_request.h" -#include "_form.h" #include "pa_vform.h" -// global var +// defines + +#define FORM_CLASS_NAME "form" + +// class -VStateless_class *form_base_class; +class MForm : public Methoded { +public: + MForm(Pool& pool); + bool used_directly() { return false; } +}; // methods -static void _fields(Request& r, const String&, Array *params) { - Pool& pool=r.pool(); - VForm *vform=static_cast(r.self); - r.write_no_lang(*new(pool) VHash(pool, &vform->fields())); +// constructor + +MForm::MForm(Pool& apool) : Methoded(apool) { + set_name(*NEW String(pool(), FORM_CLASS_NAME)); } -// initialize +// global variable + +Methoded *form_base_class; + +// creator -void initialize_form_base_class(Pool& pool, VStateless_class& vclass) { - // ^form:fields[] - vclass.add_native_method("fields", _fields, 0, 0); +Methoded *MForm_create(Pool& pool) { + return form_base_class=new(pool) MForm(pool); }