Annotation of parser3/src/types/pa_vjunction.C, revision 1.16

1.1       paf         1: /**    @file
1.4       misha       2:        Parser: @b junction class decl.
1.1       paf         3: 
1.15      moko        4:        Copyright (c) 2001-2015 Art. Lebedev Studio (http://www.artlebedev.com)
1.1       paf         5:        Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
                      6: */
                      7: 
1.4       misha       8: // include
1.2       paf         9: 
1.1       paf        10: #include "pa_vjunction.h"
1.4       misha      11: #include "pa_vbool.h"
1.6       misha      12: #include "pa_wcontext.h"
                     13: 
1.16    ! moko       14: volatile const char * IDENT_PA_VJUNCTION_C="$Id: pa_vjunction.C,v 1.15 2015/10/26 01:22:01 moko Exp $" IDENT_PA_VJUNCTION_H IDENT_PA_JUNCTION_H;
1.11      moko       15: 
1.6       misha      16: void VJunction::reattach(WContext *new_wcontext){
                     17:        if(new_wcontext) {
                     18:                assert(fjunction.wcontext!=new_wcontext);
                     19:                fjunction.wcontext=new_wcontext;
                     20:                fjunction.wcontext->attach_junction(this);
1.8       misha      21:        } else {
                     22:                fjunction.method_frame=0;
                     23:                fjunction.rcontext=0;
                     24:                fjunction.wcontext=0;
1.7       misha      25:        }
1.6       misha      26: }
                     27: 
1.1       paf        28: 
1.12      moko       29: override Value& VJunction::as_expr_result() {
                     30:        return VBool::get(false);
1.1       paf        31: }
1.9       misha      32: 
                     33: 
1.13      misha      34: #ifndef OPTIMIZE_BYTECODE_GET_ELEMENT__SPECIAL
1.9       misha      35: Value* VJunction::get_element(const String& aname) {
                     36:        // .CLASS
1.16    ! moko       37:        if(aname==class_element_name)
1.9       misha      38:                return this;
                     39:        // .CLASS_NAME
1.16    ! moko       40:        if(aname==class_name_element_name)
1.9       misha      41:                return new VString(junction_class_name);
                     42:        return Value::get_element(aname);
1.10      misha      43: }
1.14      moko       44: #endif

E-mail: