2008-01-09 Jb Evain * Expression.cs: fix GetFuncType to return the correct type depending on the asked arity. 2008-01-09 Jb Evain * Expression.cs: ArrayLength: only accept single dimensional array. 2008-01-09 Jb Evain * Expression.cs: throw ArgumentNullException when the type parameter of Call is null. 2008-01-09 Jb Evain * Expression.cs: make the TypeAs test pass. 2007-12-04 Marek Safar * ElementInit.cs: New implementation. * Funclet.cs, FuncletExpression.cs, LiftExpression.cs: Removed. * ListInitExpression.cs, MemberListBinding.cs, Expression.cs, ExpressionType.cs, BinaryExpression.cs, NewExpression.cs: API update. 2007-08-17 Federico Di Gregorio * Expression.cs: fixed Field() and Property() behaviour when accessing static members (i.e., when expression is null). Also added the missing version for Property(). * MemberExpression.cs: added missing BuildString() method that differentiates between static and instance methods. * Expression.cs: implemented Quote() and tests. * Expression.cs: implemented RightShift(), added tests for it and for LeftShift(). * Expression.cs: checked TypeAs and added tests. * UnaryExpression.cs: added BuildString() case for TypeAs. * Expression.cs: added tests for TypeIs. * TypeBinaryExpression.cs: implemented BuildString(). * Expression.cs: added three specific methods to determine when a type is a number (IsNumeric), an integer (IsInteger) or an integer or a bool (IsIntegerOrBool). Code taken and simplified from ExpressionUtil. * Expression.cs: two less to do: Subtract() and SubtractChecked(). * Expression.cs: implemented all versions of Or() and OrElse(). * BinaryExpression.cs: fixed OrElse case in BuildString(). * Expression.cs: implemented all versions of Divide(), Modulo(), Multiply(), MultiplyChecked() and tests. Call() works except for generic types. 2007-08-15 Federico Di Gregorio * Expression.cs: implemented both versions of Bind() & tests. * MemberBinding.cs: added missing override of ToString(). 2007-08-14 Federico Di Gregorio * Expression.cs: implemented ArrayLength & tests. * Expression.cs: implemented all three versions of ArrayIndex method. * MethodCallExpression.cs: implemented BuildString() method. 2007-08-13 Federico Di Gregorio * ConstantExpression.cs: using multiple StringBuilder.Append() methods instead of concatenating strings. * Expression.cs: added AndAlso() method and validator for True and False user-defined operators. * Test: added unique IDs to all tests. 2007-08-12 Federico Di Gregorio * ConstantExpression.cs: fixed BuildString() to return "value(...)" when the string representation of the value is equal to the type name. Added appropriate checks. * Expression.cs: fixed And() method. * Expression.cs: Add() method uses new GetUserDefinedBinaryOperator() and raise exactly the same exceptions (including exception text) as MS one does. 2007-07-24 Federico Di Gregorio * Expression.cs: modified Constant method to use "object" as the type if just a null is given. Changed exception text when the passed type is not nullable but value is. 2007-07-13 Federico Di Gregorio * BinaryExpression.cs: implemented BuildString(). 2007-07-12 Federico Di Gregorio * Test/System.Linq.Expressions: added test directory and some tests. * Expression.cs: - changed the exceptions raised on argument errors to match the ones in found in the last system.core.dll (the one from SilverLight 1.1 alpha) - removed the three very generic #regions and started replacing them with specific ones, as found in other parts of classes code. 2007-03-29 Antonello Provenzano * ExpressionUtil.cs: - Implemented method GetOperator for general pourposes, moving some implementations from Expression.cs specific methods - IsNumber now returns 'true' for sbyte and unsigned integers - Implemented method IsInteger * Expression.cs: Implementation of the method: - AddChecked - Call - Condition - Divide - LeftShift - Quote * ExpressionType.cs: Applied Obsolete attributes * LiftExpression.cs: New file 2007-03-27 Antonello Provenzano * ExpressionUtil.cs: methods 'GetReadOnlyCollection' removed to use internal extension 'ToReadOnlyCollection'. * Expression: Removed unimplemented stubs. 2007-03-27 Marek Safar * InvocationExpression.cs, * ExpressionType.cs, * ParameterExpression.cs: Updated to match with the latest version. 2007-03-25 Antonello Provenzano * ConstantExpression.cs: New file * ConditionalExpression.cs: New file * BinaryExpression.cs: New file * ExecutionScope.cs: New file * Expression.cs: New file * Expression_T.cs: modified to support LambdaExpression .ctor * ExpressionCompiler.cs: New file * ExpressionType.cs: New file * ExpressionUtil.cs: New file * Funclet.cs: New file * FuncletExpression.cs: New file * InvocationExpression.cs: New file * IStrongBox.cs: New file * LambdaExpression.cs: implemented constructor and fields * MemberAssignment.cs: New file * MemberBinding.cs: New file * MemberBindingType.cs: New file * MemberListBinding.cs: New file * MemberMemberBinding.cs: New file * MethodCallExpression.cs: New file * NewArrayExpression.cs: New file * NewExpression.cs: New file * ParameterExpression.cs: extended implementation * StrongBox_T.cs: New file * UnaryExpression.cs: New file * TypeBinaryExpression.cs: New file 2007-02-16 Marek Safar * Expression_T.cs: Derives from lambda. 2007-02-03 Atsushi Enomoto * LambdaExpression.cs : new (stub) file. 2007-01-19 Marek Safar * Expression_T.cs: New file. 2006-11-02 Marek Safar * Initial checkin.