override public IRTSLinker appendRightChild(IRTSLinker oper) { IRTSDefine.Linker id = oper.getId(); if (mCArg) { if (id == IRTSDefine.Linker.BRACKET2) { mCArg = false; mCur++; return(this); } else if (id == IRTSDefine.Linker.SEMICOLON) { if (mCur < 2) { mCur++; return(this); } else { return(oper); } } else { IRTSLinker ret = mChildren[mCur]; if (ret != null) { ret.setSuper(null); } mChildren[mCur] = oper; oper.setSuper(this); return(ret); } } else if (mCur == 0) { if (id != IRTSDefine.Linker.BRACKET) { return(oper); } mCArg = true; return(this); } else { if (mCur != 3) { return(oper); } IRTSLinker ret = mChildren[mCur]; if (ret != null) { ret.setSuper(null); } mChildren[mCur] = oper; oper.setSuper(this); return(ret); } }
override public IRTSLinker appendRightChild(IRTSLinker linker) { IRTSDefine.Linker id = linker.getId(); if (id == IRTSDefine.Linker.SEMICOLON) { if (mBodyL == null) { return(linker); } mOver = true; return(this); } else { if (mOver) { return(linker); } IRTSLinker ret = mBodyL; if (ret != null) { ret.setSuper(null); } mBodyL = linker; linker.setSuper(this); if (linker.isStructure()) { mOver = true; } return(ret); } }
override public IRTSLinker appendRightChild(IRTSLinker linker) { IRTSDefine.Linker id = linker.getId(); if (mOnBody) { if (id == IRTSDefine.Linker.ELSE) { if (mElseL != null) { return(linker); } mOver = true; mElseL = linker; linker.setSuper(this); return(null); } else if (id == IRTSDefine.Linker.SEMICOLON) { if (mBodyL == null || mOver) { return(linker); } mOver = true; return(this); } else if (linker.isStructure()) { if (mBodyL != null) { return(linker); } mOver = true; mBodyL = linker; linker.setSuper(this); return(null); } else { if (mOver) { return(linker); } IRTSLinker ret = mBodyL; if (ret != null) { ret.setSuper(null); } mBodyL = linker; linker.setSuper(this); return(ret); } } else { if (id == IRTSDefine.Linker.THEN) { mOnBody = true; return(this); } IRTSLinker ret = mConditionL; if (ret != null) { ret.setSuper(null); } mConditionL = linker; linker.setSuper(this); return(ret); } //if (mConditionL == null) //{ // if (id != IRTSDefine.Linker.BRACKET) // return linker; // mConditionL = linker; // linker.setSuper(this); // return null; //} //else if (id == IRTSDefine.Linker.ELSE) //{ // if (mElseL != null) // return linker; // mOver = true; // mElseL = linker; // linker.setSuper(this); // return null; //} //else if (id == IRTSDefine.Linker.SEMICOLON) //{ // if (mBodyL == null || mOver) // return linker; // mOver = true; // return this; //} //else if (linker.isStructure()) //{ // if (mBodyL != null) // return linker; // mOver = true; // mBodyL = linker; // linker.setSuper(this); // return null; //} //else //{ // if (mOver) // return linker; // IRTSLinker ret = mBodyL; // if (ret != null) // ret.setSuper(null); // mBodyL = linker; // linker.setSuper(this); // return ret; //} }
public RTSArithmeticL(IRTSDefine.Linker id) : base(id) { }
public RTSArithmeticR(IRTSDefine.Linker id, IRTSLinker left, IRTSLinker right) : base(left, right) { mId = id; }
public RTSCompareL(IRTSDefine.Linker id) : base(id) { }
public RTSSelfRaiseR(IRTSDefine.Linker operId, IRTSRunner var, bool varAtLeft) { mOperId = operId; mVar = var; mLeft = varAtLeft; }
public RTSExecL(IRTSDefine.Linker id, IRTSDefine.Linker rightId) : base(id) { mRId = rightId; }
public RTSExecL() : base(0) { mRId = 0; }
public RTSEndingL(IRTSDefine.Linker id) : base(id) { }
public RTSLinker(IRTSDefine.Linker id) { mId = id; }
public RTSLogicL(IRTSDefine.Linker id) : base(id) { }
public RTSCompareR(IRTSDefine.Linker id, IRTSLinker left, IRTSLinker right) : base(left, right) { mId = id; }
public RTSBinaryL(IRTSDefine.Linker id) : base(id) { }
public RTSSelfRaiseL(IRTSDefine.Linker id) : base(id) { }
public RTSBracketL(IRTSDefine.Linker id, IRTSDefine.Linker rightId) : base(id) { mRId = rightId; }