ChangeLog 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. 2008-01-21 Jb Evain <[email protected]>
  2. * Expression.cs, UnaryExpression.cs, BinaryExpression.cs:
  3. Move the IsUnsigned helper from BinaryExpression to Expression,
  4. so it can be used in UnaryExpression.
  5. 2008-01-21 Miguel de Icaza <[email protected]>
  6. * Start code generation for nullables, currently this generates
  7. incorrect code for things like:
  8. Expression<Func<int?, int?, int?>> e2 = (a, b) => a + b;
  9. e2.Compile ().Invoke (null, 3))
  10. This should return null, but returns something else.
  11. * Introduce LINQ_DBG env variable, which generates a linq file in
  12. /tmp; It currently does not work as well as it should, as the
  13. Func<> parameters do not mwatch the generated method.
  14. Investigate.
  15. 2008-01-20 Miguel de Icaza <[email protected]>
  16. Introduce support for Nullable arguments, no code is generated for
  17. these yet, its only tests + node creation behavior at this point.
  18. * Expression.cs (BinaryCoreCheck): Do not allow "int?" and "int"
  19. as operators, they must both be nullable.
  20. NullableTypes in the arguments are transformed into the underlying
  21. values when doing the method validation.
  22. 2008-01-18 Miguel de Icaza <[email protected]>
  23. * ParameterExpression.cs: Add emit support.
  24. 2008-01-18 Jb Evain <[email protected]>
  25. * Expression[Printer|Visitor].cs: implement UnaryPlus, Not, Negate.
  26. 2008-01-18 Miguel de Icaza <[email protected]>
  27. * BinaryExpression.cs: Add support for emitting code for some
  28. operators (ported from the Mono C# compiler).
  29. Add tests.
  30. 2008-01-17 Miguel de Icaza <[email protected]>
  31. Beginning of code generation framework for Linq.Expressions.
  32. Some code was borrowed by from the C# compiler
  33. * Expression_T.cs: Fill in the blanks.
  34. * LambdaExpression.cs: Validation of parameters mostly, a tiny bit
  35. of codegen.
  36. * ConstantExpression.cs: Mostly done, need to write tests for
  37. non-fundamental types and other ValueType initializations.
  38. 2008-01-17 Jb Evain <[email protected]>
  39. * Expression.cs: implement MakeMemberAccess.
  40. 2008-01-17 Jb Evain <[email protected]>
  41. * Expression.cs, ExpressionPrinter.cs, BinaryExpression.cs:
  42. implement ArrayIndex.
  43. 2008-01-17 Jb Evain <[email protected]>
  44. * Expression.cs: Use TypeCode for IsInt and IsNumber.
  45. 2008-01-16 Miguel de Icaza <[email protected]>
  46. * Expression.cs: Add support for user-defined operators.
  47. Put back various binary operator tests.
  48. 2008-01-16 Jb Evain <[email protected]>
  49. * Expression.cs, ExpressionPrinter.cs: fix call for static methods.
  50. 2008-01-15 Miguel de Icaza <[email protected]>
  51. * Expression.cs: Do validation on the method parameters and use
  52. the return type if provided.
  53. 2008-01-15 Jb Evain <[email protected]>
  54. * MethodCallExpression.cs, Expression.cs
  55. ExpressionPrinter.cs: Implement Call (Expression, ...)
  56. 2008-01-15 Jb Evain <[email protected]>
  57. * Expression.cs, ConditionalExpressionExpression.cs
  58. ExpressionPrinter.cs : implement Expression.Condition.
  59. 2008-01-15 Jb Evain <[email protected]>
  60. * Expression.cs,
  61. ParameterExpression.cs,
  62. ExpressionPrinter.cs: implement Expression.Parameter
  63. 2008-01-15 Jb Evain <[email protected]>
  64. * ExpressionPrinter.cs (VisitBinaryExpression): simple
  65. implementation (probably misses a few cases).
  66. 2008-01-14 Miguel de Icaza <[email protected]>
  67. * Expression.cs: Bring back the (most) of binary operators. Added
  68. type checking as well and reorganized the source file by topic
  69. instead of alphabetical sorting.
  70. 2008-01-14 Jb Evain <[email protected]>
  71. * ExpressionPrinter.cs: print ArrayLength.
  72. 2008-01-14 Jb Evain <[email protected]>
  73. * Expression.cs: TypeAs can't take value types.
  74. * ExpressionPrinter.cs: implement TypeAs.
  75. 2008-01-14 Jb Evain <[email protected]>
  76. * Expression.cs: implement TypeIs.
  77. * ExpressionPrinter.cs: implement VisitTypeBinaryExpression.
  78. * TypeBinaryExpression.cs: add proper ctor.
  79. 2008-01-14 Jb Evain <[email protected]>
  80. * Expression.cs, ExpressionPrinter.cs: fix for Quote's type.
  81. 2008-01-14 Jb Evain <[email protected]>
  82. * BinaryExpression.cs,
  83. * Expression.cs: revert part of Miguel's last patch.
  84. MakeBinary is expected to call the appropriate factory
  85. methods. Whose methods that are responsible for creating
  86. the good BinaryExpression, wether they use a custom method
  87. or not.
  88. 2008-01-14 Jb Evain <[email protected]>
  89. * Expression.cs: MakeUnary is expected to call the appropriate
  90. factory methods.
  91. 2008-01-14 Miguel de Icaza <[email protected]>
  92. * Expression.cs (Constant, MakeBinary and consumers of it): Some
  93. more fill-up changes.
  94. MakeBinary will need much more work to support user-provided
  95. types.
  96. 2008-01-13 Jb Evain <[email protected]>
  97. * *.cs: fresh implementation.