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 + -
显示快捷键?