ptree.cc
来自「这个程序是关于OpenC++的反射植入机制的编译器」· CC 代码 · 共 553 行 · 第 1/2 页
CC
553 行
{ Deprecated("Ptree::Second(Ptree* p)", "PtreeUtil::Second(Ptree* p)"); return PtreeUtil::Second(p);}Ptree* Ptree::Third(Ptree* p){ Deprecated("Ptree::Third(Ptree* p)", "PtreeUtil::Third(Ptree* p)"); return PtreeUtil::Third(p);}Ptree* Ptree::Nth(Ptree* p, int n){ Deprecated("Ptree::Nth(Ptree* p, int n)", "PtreeUtil::Nth(Ptree* p, int n)"); return PtreeUtil::Nth(p, n);}int Ptree::Length(Ptree* p){ Deprecated("Ptree::Length(Ptree* p)", "PtreeUtil::Length(Ptree* p)"); return PtreeUtil::Length(p);}Ptree* Ptree::ListTail(Ptree* p, int k){ Deprecated("Ptree::ListTail(Ptree* p, int k)", "PtreeUtil::ListTail(Ptree* p, int k)"); return PtreeUtil::ListTail(p, k);}Ptree* Ptree::Cons(Ptree* p, Ptree* q){ Deprecated("Ptree::Cons()", "PtreeUtil::Cons()"); return PtreeUtil::Cons(p, q);}Ptree* Ptree::List(Ptree* p){ Deprecated("Ptree::List(Ptree* p)", "PtreeUtil::List(Ptree* p)"); return PtreeUtil::List(p);}Ptree* Ptree::List(){ Deprecated("Ptree::List()", "PtreeUtil::List()"); return PtreeUtil::List();}Ptree* Ptree::List(Ptree* p, Ptree* q){ Deprecated("Ptree::List(Ptree* p, Ptree* q)", "PtreeUtil::List(Ptree* p, Ptree* q)"); return PtreeUtil::List(p, q);}Ptree* Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3){ Deprecated("Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3)", "PtreeUtil::List(Ptree* p1, Ptree* p2, Ptree* p3)"); return PtreeUtil::List(p1, p2, p3);}Ptree* Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4){ Deprecated("Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4)", "PtreeUtil::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4)"); return PtreeUtil::List(p1, p2, p3, p4);}Ptree* Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5){ Deprecated("Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5)", "PtreeUtil::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5)"); return PtreeUtil::List(p1, p2, p3, p4, p5);}Ptree* Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5, Ptree* p6){ Deprecated("Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5, Ptree* p6)", "PtreeUtil::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5, Ptree* p6)"); return PtreeUtil::List(p1, p2, p3, p4, p5, p6);}Ptree* Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5, Ptree* p6, Ptree* p7){ Deprecated("Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5, Ptree* p6, Ptree* p7)", "PtreeUtil::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5, Ptree* p6, Ptree* p7)"); return PtreeUtil::List(p1, p2, p3, p4, p5, p6, p7);}Ptree* Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5, Ptree* p6, Ptree* p7, Ptree* p8){ Deprecated("Ptree::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5, Ptree* p6, Ptree* p7, Ptree* p8)", "PtreeUtil::List(Ptree* p1, Ptree* p2, Ptree* p3, Ptree* p4, Ptree* p5, Ptree* p6, Ptree* p7, Ptree* p8)"); return PtreeUtil::List(p1, p2, p3, p4, p5, p6, p7, p8);}Ptree* Ptree::CopyList(Ptree* p){ Deprecated("Ptree::CopyList(Ptree* p)", "PtreeUtil::CopyList(Ptree* p)"); return PtreeUtil::CopyList(p);}Ptree* Ptree::Append(Ptree* p, Ptree* q){ Deprecated("Ptree::Append(Ptree* p, Ptree* q)", "PtreeUtil::Append(Ptree* p, Ptree* q)"); return PtreeUtil::Append(p, q);}Ptree* Ptree::ReplaceAll(Ptree* list, Ptree* orig, Ptree* subst){ Deprecated("Ptree::ReplaceAll(Ptree* list, Ptree* orig, Ptree* subst)", "PtreeUtil::ReplaceAll(Ptree* list, Ptree* orig, Ptree* subst)"); return PtreeUtil::ReplaceAll(list, orig, subst);}Ptree* Ptree::Subst(Ptree* newone, Ptree* old, Ptree* tree){ Deprecated("Ptree::Subst(Ptree* newone, Ptree* old, Ptree* tree)", "PtreeUtil::Subst(Ptree* newone, Ptree* old, Ptree* tree)"); return PtreeUtil::Subst(newone, old, tree);}Ptree* Ptree::Subst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* tree){ Deprecated("Ptree::Subst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* tree)", "PtreeUtil::Subst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* tree)"); return PtreeUtil::Subst(newone1, old1, newone2, old2, tree);}Ptree* Ptree::Subst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* newone3, Ptree* old3, Ptree* tree){ Deprecated("Ptree::Subst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* newone3, Ptree* old3, Ptree* tree)", "PtreeUtil::Subst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* newone3, Ptree* old3, Ptree* tree)"); return PtreeUtil::Subst(newone1, old1, newone2, old2, newone3, old3, tree);}Ptree* Ptree::ShallowSubst(Ptree* newone, Ptree* old, Ptree* tree){ Deprecated("Ptree::ShallowSubst(Ptree* newone, Ptree* old, Ptree* tree)", "PtreeUtil::ShallowSubst(Ptree* newone, Ptree* old, Ptree* tree)"); return PtreeUtil::ShallowSubst(newone, old, tree);}Ptree* Ptree::ShallowSubst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* tree){ Deprecated("Ptree::ShallowSubst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* tree)", "PtreeUtil::ShallowSubst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* tree)"); return PtreeUtil::ShallowSubst(newone1, old1, newone2, old2, tree);}Ptree* Ptree::ShallowSubst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* newone3, Ptree* old3, Ptree* tree){ Deprecated("Ptree::ShallowSubst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* newone3, Ptree* old3, Ptree* tree)", "PtreeUtil::ShallowSubst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* newone3, Ptree* old3, Ptree* tree)"); return PtreeUtil::ShallowSubst(newone1, old1, newone2, old2, newone3, old3, tree);}Ptree* Ptree::ShallowSubst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* newone3, Ptree* old3, Ptree* newone4, Ptree* old4, Ptree* tree){ Deprecated("Ptree::ShallowSubst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* newone3, Ptree* old3, Ptree* newone4, Ptree* old4, Ptree* tree)", "PtreeUtil::ShallowSubst(Ptree* newone1, Ptree* old1, Ptree* newone2, Ptree* old2, Ptree* newone3, Ptree* old3, Ptree* newone4, Ptree* old4, Ptree* tree)"); return PtreeUtil::ShallowSubst(newone1, old1, newone2, old2, newone3, old3, newone4, old4, tree);}Ptree* Ptree::SubstSublist(Ptree* newsub, Ptree* oldsub, Ptree* lst){ Deprecated("Ptree::SubstSublist(Ptree* newsub, Ptree* oldsub, Ptree* lst)", "PtreeUtil::SubstSublist(Ptree* newsub, Ptree* oldsub, Ptree* lst)"); return PtreeUtil::SubstSublist(newsub, oldsub, lst);}Ptree* Ptree::Snoc(Ptree* p, Ptree* q){ Deprecated("Ptree::Snoc(Ptree* p, Ptree* q)", "PtreeUtil::Snoc(Ptree* p, Ptree* q)"); return PtreeUtil::Snoc(p, q);}Ptree* Ptree::Nconc(Ptree* p, Ptree* q){ Deprecated("Ptree::Nconc(Ptree* p, Ptree* q)", "PtreeUtil::Nconc(Ptree* p, Ptree* q)"); return PtreeUtil::Nconc(p, q);}Ptree* Ptree::Nconc(Ptree* p, Ptree* q, Ptree* r){ Deprecated("Ptree::Nconc(Ptree* p, Ptree* q, Ptree* r)", "PtreeUtil::Nconc(Ptree* p, Ptree* q, Ptree* r)"); return PtreeUtil::Nconc(p, q, r);}Ptree* Ptree::Make(const char* pat, ...){ va_list args; const int N = 4096; static char buf[N]; char c; int len; char* ptr; Ptree* p; Ptree* q; int i = 0, j = 0; Ptree* result = 0; va_start(args, pat); while((c = pat[i++]) != '\0') if(c == '%'){ c = pat[i++]; if(c == '%') buf[j++] = c; else if(c == 'd'){ ptr = IntegerToString(va_arg(args, int), len); memmove(&buf[j], ptr, len); j += len; } else if(c == 's'){ ptr = va_arg(args, char*); len = strlen(ptr); memmove(&buf[j], ptr, len); j += len; } else if(c == 'c') buf[j++] = va_arg(args, int); else if(c == 'p'){ p = va_arg(args, Ptree*); if(p == 0) /* ignore */; else if(p->IsLeaf()){ memmove(&buf[j], p->GetPosition(), p->GetLength()); j += p->GetLength(); } else{ if(j > 0) q = PtreeUtil::List(new DupLeaf(buf, j), p); else q = PtreeUtil::List(p); j = 0; result = PtreeUtil::Nconc(result, q); } } else TheErrorLog().Report(MopMsg(Msg::Fatal, "Ptree::Make()", "invalid format")); } else buf[j++] = c; va_end(args); if(j > 0) if(result == 0) result = new DupLeaf(buf, j); else result = PtreeUtil::Snoc(result, new DupLeaf(buf, j)); return result;}bool Ptree::Reify(unsigned int& value){ return Lex::Reify(this, value);}bool Ptree::Reify(char*& str){ return Lex::Reify(this, str);}Ptree* Ptree::qMake(char*){ TheErrorLog().Report(MopMsg(Msg::Fatal, "PtreeUtil::qMake()", "the metaclass must be compiled by OpenC++.")); return 0;}Ptree* Ptree::GenSym(){ Deprecated("Ptree::GenSym()", "PtreeUtil::GenSym()"); return PtreeUtil::GenSym();}}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?