Annotation of parser3/src/classes/memory.C, revision 1.16

1.2       paf         1: /** @file
                      2:        Parser: @b memory parser class.
                      3: 
1.12      moko        4:        Copyright (c) 2001-2017 Art. Lebedev Studio (http://www.artlebedev.com)
1.2       paf         5:        Author: Alexandr Petrosian <paf@design.ru>(http://paf.design.ru)
                      6: */
                      7: 
                      8: #include "pa_common.h"
                      9: #include "pa_vmemory.h"
                     10: #include "pa_request.h"
                     11: 
1.16    ! moko       12: volatile const char * IDENT_MEMORY_C="$Id: memory.C,v 1.15 2020/12/14 20:58:15 moko Exp $" IDENT_PA_VMEMORY_H;
1.9       moko       13: 
1.2       paf        14: class MMemory: public Methoded {
                     15: public:
                     16:        MMemory();
                     17: 
                     18: public: // Methoded
                     19:        bool used_directly() { return false; }
                     20: };
                     21: 
                     22: // global variables
                     23: 
1.11      moko       24: DECLARE_CLASS_VAR(memory, new MMemory);
1.2       paf        25: 
1.4       paf        26: static void _compact(Request& r, MethodParams&) {
1.2       paf        27:        r.wipe_unused_execution_stack();
                     28: #ifndef PA_DEBUG_DISABLE_GC
1.3       paf        29:        {
1.15      moko       30:                GC_enable();
1.3       paf        31:                GC_gcollect();
1.15      moko       32:                GC_disable();
1.3       paf        33:        }
                     34: #endif
1.13      moko       35: }
1.2       paf        36: 
                     37: // constructor
                     38: 
                     39: MMemory::MMemory(): Methoded("memory") {
                     40:        // ^compact[]
                     41:        add_native_method("compact", Method::CT_STATIC, _compact, 0, 0);
                     42: }

E-mail: