public override binaryOperationClass binaryOperation(binaryOperationClass context) { var postfixList = ToPostfix(context.binaryOperationList); context.extraInfo = PostfixEvaluator(postfixList); return(context); }
public override variableAssignClass variableAssign(variableAssignClass context) { var contextEI = context.expression.extraInfo is VariableValue v? v.Value : context.expression.extraInfo; switch (context.op) { case "=": case ":=": ((VariableValue)context.complexVariable.extraInfo).Value = contextEI; break; default: var exp = new binaryOperationClass(new List <BaseAHKNode>() { context.complexVariable, new opClass(context.op.Substring(0, context.op.Length - 1)), context.expression }); ((VariableValue)context.complexVariable.extraInfo).Value = traverser.binaryOperation(exp).extraInfo; break; } return(context); }
public virtual string binaryOperation(binaryOperationClass context) { return(context.defaultValue); }