public void DropOperator(int index) { if (operatorOP.GetType() == typeof(OpAnd)) { OpAnd and = operatorOP as OpAnd; if (index == 0 && and.A == null) { and.A = UIRobotProg.Instance.MakeOperator(and); } if (index == 1 && and.B == null) { and.B = UIRobotProg.Instance.MakeOperator(and); } } else if (operatorOP.GetType() == typeof(OpOr)) { OpOr or = operatorOP as OpOr; if (index == 0 && or.A == null) { or.A = UIRobotProg.Instance.MakeOperator(or); } if (index == 1 && or.B == null) { or.B = UIRobotProg.Instance.MakeOperator(or); } } UIRobotProg.Instance.ChangeProgram(); }
public void GenerateContent() { if (aGo != null) { Destroy(aGo); aGo = null; } if (bGo != null) { Destroy(bGo); bGo = null; } if (operatorOP.GetType() == typeof(OpAnd)) { OpAnd and = operatorOP as OpAnd; aGo = UIRobotProg.Instance.MakeGameObjectOperator(and.A, aTransform); bGo = UIRobotProg.Instance.MakeGameObjectOperator(and.B, bTransform); } else if (operatorOP.GetType() == typeof(OpOr)) { OpOr or = operatorOP as OpOr; aGo = UIRobotProg.Instance.MakeGameObjectOperator(or.A, aTransform); bGo = UIRobotProg.Instance.MakeGameObjectOperator(or.B, bTransform); } }
private Expresion ParseExpresionLogica() { Expresion resultado = ParsearExpresion(); bool siguienteOperadorLogico = EsOperadorLogica(); while (siguienteOperadorLogico) { TokenType tipo = lexer.tokenActual.Type; lexer.Aceptar(); Expresion segundoObjeto = ParsearExpresion(); switch (tipo) { case TokenType.yLogico: resultado = new OpAnd(resultado, segundoObjeto); break; case TokenType.oLogico: resultado = new OpOr(resultado, segundoObjeto); break; default: break; } siguienteOperadorLogico = EsOperadorLogica(); } return(resultado); }
Expression Parse_OpOr() { Expression expr = Parse_OpXor(); while (m_Tokenizer.PeekNextToken().type == TokenType.OpOr) { m_Tokenizer.ConsumeNextToken(); expr = new OpOr(expr, Parse_OpXor()); } return(expr); }
private SpelNode EatLogicalOrExpression() { var expr = EatLogicalAndExpression(); while (PeekIdentifierToken("or") || PeekToken(TokenKind.SYMBOLIC_OR)) { // consume OR var t = TakeToken(); var rhExpr = EatLogicalAndExpression(); CheckOperands(t, expr, rhExpr); expr = new OpOr(t.StartPos, t.EndPos, expr, rhExpr); } return(expr); }
Operator MakeOpe() { Operator newOp = null; switch (UINewTool.ToolDragAndDrop) { case UINewTool.Tool.O_And: newOp = new OpAnd(); break; case UINewTool.Tool.O_Or: newOp = new OpOr(); break; case UINewTool.Tool.O_Equal: newOp = new OpEqual(); break; case UINewTool.Tool.O_Inf: newOp = new OpInf(); break; case UINewTool.Tool.O_Sup: newOp = new OpSup(); break; case UINewTool.Tool.O_Not: newOp = new OpNot(); break; case UINewTool.Tool.O_Is: newOp = new OpIs(); break; } return(newOp); }
public void OrsNumbers() { OpOr bor = new OpOr(new IntLiteralNode("2"), new IntLiteralNode("3")); Assert.AreEqual(2 | 3, bor.GetValue(null, null)); }
public void OrsBooleans() { OpOr bor = new OpOr(new BooleanLiteralNode("false"), new BooleanLiteralNode("true")); Assert.AreEqual(false || true , bor.GetValue(null, null)); }
public void OrsBooleans() { OpOr bor = new OpOr(new BooleanLiteralNode("false"), new BooleanLiteralNode("true")); Assert.AreEqual(false || true, bor.GetValue(null, null)); }
Expression Parse_OpOr() { Expression expr = Parse_OpXor(); while (m_Tokenizer.PeekNextToken().type == TokenType.OpOr) { m_Tokenizer.ConsumeNextToken(); expr = new OpOr(expr, Parse_OpXor()); } return expr; }