Exemplo n.º 1
0
        public bool Execute(object obj)
        {
            if (m_QExpression.Count == 0)
            {
                throw new Exception("表达式空");
            }
            LogicStatement state  = m_QExpression[0];
            bool           result = state.Execute(obj);
            int            index  = 0;

            while (index < m_QLogic.Count)
            {
                string logic = m_QLogic[index];
                if (logic == "||")
                {
                    result = result || m_QExpression[index + 1].Execute(obj);
                }
                else//&&
                {
                    result = result && m_QExpression[index + 1].Execute(obj);
                }
                ++index;
            }
            return(result);
        }
Exemplo n.º 2
0
 public IfLogicStatement(LogicExpression condition, LogicStatement statement)
 {
     this.Condition = condition;
     this.Statement = statement;
 }
Exemplo n.º 3
0
 public IfElseLogicStatement(LogicExpression condition, LogicStatement statement, LogicStatement elseStatement)
 {
     this.Condition = condition;
     this.Statement = statement;
     this.ElseStatement = elseStatement;
 }
Exemplo n.º 4
0
 public WhileLogicStatement(LogicExpression condition, LogicStatement statement)
 {
     this.Condition = condition;
     this.Statement = statement;
 }
Exemplo n.º 5
0
 public IfElseLogicStatement(LogicExpression condition, LogicStatement statement, LogicStatement elseStatement)
 {
     this.Condition     = condition;
     this.Statement     = statement;
     this.ElseStatement = elseStatement;
 }