Annotation of parser3/src/classes/file.C, revision 1.1

1.1     ! paf         1: /*
        !             2:        Parser
        !             3:        Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com)
        !             4:        Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf)
        !             5: 
        !             6:        $Id: file.C,v 1.2 2001/03/13 20:02:08 paf Exp $
        !             7: */
        !             8: 
        !             9: #include "pa_request.h"
        !            10: #include "_file.h"
        !            11: #include "pa_vfile.h"
        !            12: 
        !            13: // global var
        !            14: 
        !            15: VStateless_class *file_base_class;
        !            16: 
        !            17: // methods
        !            18: 
        !            19: static void _save(Request& r, const String& method_name, Array *params) {
        !            20:        //\Pool& pool=r.pool();
        !            21:        Value *vfile_name=static_cast<Value *>(params->get(0));
        !            22:        // forcing
        !            23:        // ^save[this body type] 
        !            24:        r.fail_if_junction_(true, *vfile_name, 
        !            25:                method_name, "file name must not be junction");
        !            26: 
        !            27:        static_cast<VFile *>(r.self)->save(r.absolute(vfile_name->as_string().cstr()));
        !            28: }
        !            29: 
        !            30: // initialize
        !            31: 
        !            32: void initialize_file_base_class(Pool& pool, VStateless_class& vclass) {
        !            33:        // ^save[file-name]
        !            34:        vclass.add_native_method("save", _save, 1, 1);
        !            35: }

E-mail: