BLUESTACK.ORG : datei12

HomePage :: PageIndex :: RecentChanges :: RecentlyCommented :: UserSettings :: You are 38.103.63.60
//datei-name: debug.C #include "baum.h" void Baum::runDbg(int k) { varI = 0; forFlag = 0; kFlag = 0; //1 iG = 0; rekI = 0; if (s[k].t2 == 's' && s[k].v == '"') { k = s[k].sr; if (s[k].v == 'f') { iR = k; typ = s[iR].t2; iK = s[iR].sr; fWertDbg(); } } } //1 //1 hier fängt der blinde affe an nach der banane zu suchen //1 gilt für fWertDbg-aufruf //run -> void Baum::fWertDbg() { if (! kFlag) { loop: if (iR) { if (typ == 's') { s[iK].h = iR; iR = iK; kontiniu: switch (s[iR].v) { case '=': zuweis(iR); break; case '"': labFall(iR); goto loop; case '}': fctFall(iR); goto loop; case '{': iK = s[iR].sr; //2 if (s[iR].sl == do_ || s[iR].sl == goto_) //1 { typ = s[iK].t2; iR = s[iK].sr; goto kontiniu; } else if (s[iR].sl == '}' || s[iR].sl == break_) break; else { iR = iK; s[iR].s = 1; goto kontiniu; } case '!': if (s[iR].t1 == '?' && s[iR].sl == cin_) cinFall(s[iR].sr); else if (s[iR].t1 == '?' && s[iR].sl == cout_) coutFall(s[iR].sr, s[iR].t2); else coutFall(iR, 's'); break; default: typ = s[iR].t1; iK = s[iR].sl; if (typ == '?' && iK == 183) { cout << endl; iK = s[iR].sr; typ = s[iR].t2; } goto loop; } } else { if (typ == '@') { ++s[iK].s; rekStack[rekI] = iR; ++rekI; //3 fAst(iK); } //4 else if (typ == 'ß') { (this->*func[iK])(); iK = iR; } else if (iK == 183) { cout << endl; iK = iR; } else { cout << "fWert: unerwartete syntax in * " << iR << endl; return; } } } } if (kFlag) kFlag = 0; else { kFlag = 1; if (iR) root = iR; else root = iK; rTyp = typ; return; } down: iR = s[iK].h; if (! iR) { dbgFlag = 0; return; } if (iK == s[iR].sl) { if (s[iR].v == '·') { iK = iR; goto down; } //5 if (s[iR].v == '_' || s[iR].v == '~') { if (varWert[varI]) { typ = s[iR].t2; iK = s[iR].sr; goto loop; } iK = iR; goto down; } if (s[iK].v == '|') { iK = iR; goto down; } if (s[iR].v == ';') { if (s[iR].t2 == 's') sWert(s[iR].sr); else eWert(s[iR].sr, s[iR].t2); --varI; convTyp(varI, 'i'); if (varWert[varI]) { typ = s[iR].t1; iK = s[iR].sl; goto loop; } iK = iR; goto down; } typ = s[iR].t2; iK = s[iR].sr; goto loop; } iK = iR; if (s[iR].v == '_') { iR = s[iK].h; whileFall(iK); goto loop; } if (s[iR].v == '~') { iR = s[iK].h; forDo(iK); goto loop; } if (s[iR].v == 'f') { if (s[iR].s) { --s[iR].s; iK = s[iR].sl; if (s[iK].v == '·') iK = s[iK].sl; popRek(iK); --rekI; iK = rekStack[rekI]; } } goto down; } // zentraler befehlsverteiler //1 baumZauber: gotoAusführung //2 baumZauber: springt nach knoten iK //3 iK wird von switch (s[iR].v gesetzt bei typ != 's' //4 rekursionsAufruf (iK : fAst von funktion) //5 else-fall überspringen //6 automatischer break-fall


back to baumC
There is no comment on this page. [Display comments/form]