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: