public LogicCommand And(LogicCommand expression) { List <LogicCommand> expressions = new List <LogicCommand>(); expressions.Add(expression); return(this.LogicOp(LogicCommandLiteral.AND, expressions)); }
public LogicCommand Or(LogicCommand expression) { var expressions = new List <LogicCommand> { expression }; return(this.LogicOp(LogicCommandLiteral.OR, expressions)); }
private LogicCommand LogicOp(string operation, List <LogicCommand> expressions) { List <dynamic> step = new List <dynamic>(); step.Add("$" + operation); foreach (var expression in expressions) { step.Add(expression); } List <List <dynamic> > actions = new List <List <dynamic> >(); LogicCommand command = new LogicCommand(actions, step); return(command); }