2007-08-17  Federico Di Gregorio <fog@initd.org>

	* 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 <fog@initd.org>

	* Expression.cs: implemented both versions of Bind() & tests. 

	* MemberBinding.cs: added missing override of ToString().

2007-08-14  Federico Di Gregorio <fog@initd.org>

	* 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 <fog@initd.org>

	* 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 <fog@initd.org>

	* 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 <fog@initd.org>

	* 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 <fog@initd.org>

	* BinaryExpression.cs: implemented BuildString().

2007-07-12  Federico Di Gregorio <fog@initd.org>

    * 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  <antonello@deveel.com>

	* 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  <antonello@deveel.com>

	* ExpressionUtil.cs: methods 'GetReadOnlyCollection' removed
	to use internal extension 'ToReadOnlyCollection'.
	* Expression: Removed unimplemented stubs.

2007-03-27  Marek Safar  <marek.safar@gmail.com>

	* InvocationExpression.cs,
	* ExpressionType.cs,
	* ParameterExpression.cs: Updated to match with the latest version.
	
2007-03-25  Antonello Provenzano  <antonello@deveel.com>

	* 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  <marek.safar@gmail.com>

	* Expression_T.cs: Derives from lambda.

2007-02-03  Atsushi Enomoto  <atsushi@ximian.com>

	* LambdaExpression.cs : new (stub) file.

2007-01-19  Marek Safar  <marek.safar@gmail.com>

	* Expression_T.cs: New file.

2006-11-02  Marek Safar  <marek.safar@gmail.com>

	* Initial checkin.
