Dlr getDlr() { var aToken = childs.Dequeue(); var asig = aToken as Operator; if (asig != null && asig.type == OperatorType.OpenParenthesis) { return(getDlr()); } var a = aToken as Value; if (childs.count == 0) { return(a.value); } var op = childs.Dequeue() as Operator; if (op.type == OperatorType.CloseParenthesis) { return(Dlr.Constant(a.value)); } var b = getValue(); switch (op.type) { case OperatorType.Add: return(Dlr.Add(Dlr.Constant(a.value), Dlr.Constant(b))); case OperatorType.Subtract: return(Dlr.Subtract(Dlr.Constant(a.value), Dlr.Constant(b))); case OperatorType.Divide: return(Dlr.Divide(Dlr.Constant(a.value), Dlr.Constant(b))); case OperatorType.Multiply: return(Dlr.Multiply(Dlr.Constant(a.value), Dlr.Constant(b))); } return(Dlr.Empty()); }
public void TypeIs() { var expected = LinqExpression.TypeIs( LinqExpression.Empty(), typeof(object)); const string actual = @" @prefix : <http://example.com/> . @prefix xt: <http://example.com/ExpressionTypes/> . :s :typeBinaryExpressionType xt:TypeIs ; :typeBinaryExpression [ a :Empty ; ]; :typeBinaryType [ :typeName ""System.Object"" ; ] ; . "; ShouldBe(actual, expected); }
protected internal override MAst Transform() { return(MAst.Empty()); }
public virtual DLR ToDlr() { return(DLR.Empty()); }