public LanguageDefiner BuildDefiner() { LanguageDefiner definer = new LanguageDefiner(); AddToDefiner(definer); return(definer); }
public void AddOperator(LanguageDefiner definer) { Operator assign = Utils.MakeOperator(LConstants.ASSIGN_OP, -1, true, (values, op) => { throw new NotImplementedException(); }, new Validator((variables, operation) => true), null); definer.AddOperator(assign); }
public override void AddToDefiner(LanguageDefiner definer) { IOperatorDefiner[] operators = { //math new MinusOperator(), new PlusOperator(), new DivideOperator(), new MultiplyOperator(), new PowerOperator(), //comparison new EqualsOperator(), new GreaterOperator(), new LesserOperator(), //bolean new NotOperator() //??? //new AssignOperator(), }; foreach (IOperatorDefiner def in operators) { def.AddOperator(definer); } IFunctionDefiner[] functions = { //math new MaxFunction(), new NonNegFunction(), new MinFunction(), new AbsFunction() }; foreach (IFunctionDefiner func in functions) { func.AddFunction(definer); } }
public void AddFunction(LanguageDefiner definer) { definer.AddFunction(Max); }
public void AddFunction(LanguageDefiner definer) { definer.AddFunction(NonNeg); }
public abstract void AddToDefiner(LanguageDefiner definer);
public MeParser(LanguageDefiner definer) { Tokenizer = new Tokenizer(definer); Postfixer = new Postfixer(definer); TreeBuilder = new TreeBuilder(definer); }
public void AddOperator(LanguageDefiner definer) { definer.AddOperator(Power); }
public void AddOperator(LanguageDefiner definer) { definer.AddOperator(Divide); }
public Tokenizer(LanguageDefiner definer) { _definer = definer; }
public TreeBuilder(LanguageDefiner definer) { _definer = definer; }
public static void StartUp(TestContext ctx) { _definer = new BaseDefinerFactory().BuildDefiner(); }
public void AddOperator(LanguageDefiner definer) { definer.AddOperator(Greater); }
public void AddOperator(LanguageDefiner definer) { definer.AddOperator(Minus); }
public void AddOperator(LanguageDefiner definer) { definer.AddOperator(StringEquals); definer.AddOperator(NumberEquals); }
public Postfixer(LanguageDefiner definer) { _definer = definer; }
public void AddOperator(LanguageDefiner definer) { definer.AddOperator(Multiply); }