ChangeLog 45 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381
  1. 2008-09-19 Atsushi Enomoto <[email protected]>
  2. * DefaultContext.cs, Expression.cs: do not premise BaseIterator.
  3. 2008-09-19 Atsushi Enomoto <[email protected]>
  4. * XPathComparer.cs : no need to limit to BaseIterator.
  5. 2008-09-19 Atsushi Enomoto <[email protected]>
  6. * XPathNavigator.cs : oops, wrong #if ranges.
  7. 2008-09-19 Atsushi Enomoto <[email protected]>
  8. * XPathNavigator.cs : made some 2.0-only methods available in 1.x
  9. so that we don't have to hesitate to optimize xpath using them.
  10. 2008-06-03 Atsushi Enomoto <[email protected]>
  11. * Expression.cs : help diagnose variable resolution failure.
  12. 2008-04-02 Atsushi Enomoto <[email protected]>
  13. * XPathNavigator.cs : fixed InnerXml to not give up with root node.
  14. Indent InnerXml. Fixed bug #376191.
  15. 2008-02-27 Atsushi Enomoto <[email protected]>
  16. * XPathNavigator.cs : in some MoveTo*() methods, it should allow any
  17. destination node when "type" is XPathNodeType.All. Based on the
  18. patch by Sanghyeon Seo, fixed bug #365112.
  19. 2008-02-12 Atsushi Enomoto <[email protected]>
  20. * DefaultContext.cs : now number formatting for "R" works fine, so
  21. just use it (and remove conditional compilation for TARGET_JVM).
  22. 2008-01-10 Konstantin Triger <[email protected]>
  23. * Iterator.cs: prevent endless recursion in AncestorIterator
  24. while collecting results.
  25. 2008-01-12 Sebastien Pouliot <[email protected]>
  26. * DefaultContext.cs: Fix direct comparison with NaN. Found by
  27. Gendarme.
  28. 2007-12-17 Atsushi Enomoto <[email protected]>
  29. * Iterator.cs : oops, extra removal that causes perf. loss.
  30. 2007-12-17 Atsushi Enomoto <[email protected]>
  31. * Iterator.cs : be more strict to detect the end of
  32. PredicateIterator. Fixed bug #349111.
  33. 2007-12-17 Atsushi Enomoto <[email protected]>
  34. * Expression.cs : In any comparison expr, treat RTF as equivalent to
  35. string type (as specified in XSLT 1.0 section 11.1: "An operation
  36. is permitted on a result tree fragment only if that operation would
  37. be permitted on a string." ...). Fixed bug #349035.
  38. 2007-11-29 Atsushi Enomoto <[email protected]>
  39. * XPathNavigator.cs : implemented ValueAs().
  40. 2007-01-30 Atsushi Enomoto <[email protected]>
  41. * Expression.cs : typo. Close #80669
  42. 2007-01-05 Atsushi Enomoto <[email protected]>
  43. * Expression.cs : text() should match whitespace and significant
  44. whitespace nodes.
  45. 2006-11-10 Atsushi Enomoto <[email protected]>
  46. * XPathNavigator.cs :
  47. - ReadSubtree() should reject everything but Element or Root.
  48. - InnerXml and OuterXml should not use ReadSubtree() when it is
  49. not positioned on an Element or the Root. Thus, implement them
  50. in their own ways. Fixed bug #79875.
  51. 2006-11-10 Atsushi Enomoto <[email protected]>
  52. * XPathNavigator.cs : InnerXml should allow Text-only content. Fixed
  53. bug #79874, when tied to XPathNavigatorReader fix.
  54. 2006-04-10 Atsushi Enomoto <[email protected]>
  55. * XPathNavigator.cs : get_OuterXml() returns indented output, without
  56. XML declaration.
  57. 2006-03-15 Atsushi Enomoto <[email protected]>
  58. * Expression.cs : extracted XPathSortElement, XPathSorters
  59. and XPathSorter from CompiledExpression, and split
  60. XPathSorters.Sort() into some methods. Those changes are to make
  61. them reusable in XslSortEvaluator.
  62. 2006-02-26 Atsushi Enomoto <[email protected]>
  63. * Iterator.cs : seems like MS XPathNodeIterator.MoveNext() itself does
  64. not handle XsltContext.PreserveWhitespace() unlike ours. It results
  65. in not a small performance improvement. (just removed it since it
  66. didn't cause any errors in XSLT standalone tests.)
  67. 2006-02-21 Atsushi Enomoto <[email protected]>
  68. * Iterator.cs : removed extra field from AxisIterator.
  69. 2006-02-14 Atsushi Enomoto <[email protected]>
  70. * Iterator.cs : tiny message fix (thanks to alp).
  71. 2006-01-25 Atsushi Enomoto <[email protected]>
  72. * XPathNavigator.cs : fixed IsNode signature found by updated
  73. corcompare.
  74. 2006-01-11 Atsushi Enomoto <[email protected]>
  75. * Iterator.cs : Nowadays removal of cloning of the argument list
  76. in ListIterator is safe. Thanks to Joshua Tauberer for the hint.
  77. 2006-01-11 Atsushi Enomoto <[email protected]>
  78. * Iterator.cs : (DescendantOrSelfIterator/DescendantIterator) the
  79. error message is for blaming custom XPathNavigator
  80. implementation, not us ;-) (see also #77194)
  81. 2006-01-06 Atsushi Enomoto <[email protected]>
  82. * XPathNavigator.cs : use WriteNode(XPathNavigator, bool)
  83. rather than WriteNode(XmlWriter, bool) in WriteSubtree().
  84. 2005-12-14 Atsushi Enomoto <[email protected]>
  85. * XPathNavigator.cs : Added MonoTODO to CreateAttributes(). Removed
  86. MonoTODO from ReadSubtree().
  87. 2005-12-14 Atsushi Enomoto <[email protected]>
  88. * XPathNavigator.cs : UnderlyingObject returns null by default.
  89. 2005-12-13 Atsushi Enomoto <[email protected]>
  90. * XPathNavigator.cs : Reimplemented MoveToFollowing() to avoid
  91. inefficient MoveToDescendant() and to match .NET 2.0 behavior.
  92. 2005-12-13 Atsushi Enomoto <[email protected]>
  93. * XPathNavigator.cs : ReplaceSelf() should allow document fragment.
  94. Moved implementation to XPathEditableDocument.
  95. 2005-12-13 Atsushi Enomoto <[email protected]>
  96. * XPathNavigator.cs : PrependChild() should use AppendChild() when
  97. there is no child.
  98. 2005-12-13 Atsushi Enomoto <[email protected]>
  99. * XPathNavigator.cs : InsertAfter() should raise an error before
  100. MoveToNext() when current node is either attribute or namespace.
  101. 2005-12-13 Atsushi Enomoto <[email protected]>
  102. * XPathNavigator.cs : InsertAfter() should append children after it
  103. once moved to parent. This method shoulr raise an error when it is
  104. placed on Root.
  105. 2005-12-13 Atsushi Enomoto <[email protected]>
  106. * XPathNavigator.cs : (CreateFragmentReader) return XmlReader that
  107. considers current namespace contexts.
  108. 2005-12-12 Atsushi Enomoto <[email protected]>
  109. * XPathNavigator.cs : removed some MonoTODOs.
  110. 2005-12-08 Atsushi Enomoto <[email protected]>
  111. * XPathDocument.cs : garbage cleanup.
  112. 2005-11-23 Vladimir Krasnov <[email protected]>
  113. * Iterator.cs: fixed UnionIterator.SetCurrent method, the
  114. navigators may be from different xml files.
  115. 2005-11-23 Vladimir Krasnov <[email protected]>
  116. * Iterator.cs: fixed SimpleSlashIterator.MoveNextCore method, the
  117. navigators may be from different xml files.
  118. 2005-11-10 Atsushi Enomoto <[email protected]>
  119. * XPathNavigator.cs, XPathNodeIterator.cs :
  120. [DebuggerDisplay] are not worthy of existing.
  121. 2005-11-07 Atsushi Enomoto <[email protected]>
  122. * XPathNavigator.cs, XPathNodeIterator.cs : DebuggerDisplayAttribute
  123. values are fixed. However, they totally do not make sense since
  124. there is no DebuggerDisplayProxy type in our impl.
  125. 2005-11-07 Atsushi Enomoto <[email protected]>
  126. * XPathException.cs : Message property is back in 2.0 RTM.
  127. 2005-11-07 Atsushi Enomoto <[email protected]>
  128. * XPathNodeIterator.cs : added [DebuggerDisplay]. pretty useless tho.
  129. * XPathNavigator.cs : [DebuggerDisplay] as well.
  130. SelectSingleNode() and AppendChildElement() are now virtual.
  131. 2005-10-23 Atsushi Enomoto <[email protected]>
  132. * XPathNavigator.cs : now 2.0 MoveToFirst() invokes internal
  133. MoveToFirstImpl() and it is from what XmlDocumentNavigator did.
  134. This fixes XPathEditableDocument.MoveToFirst().
  135. 2004-10-15 Atsushi Enomoto <[email protected]>
  136. * XPathNavigator.cs : (DeleteRange, ReplaceRange) so they are not
  137. likely to be implemented, thus MonoTODO.
  138. 2005-10-08 Gert Driesen <[email protected]>
  139. * XPathNavigator.cs: Removed DebuggerDisplay attribute.
  140. * XPathNodeIterator.cs: Removed DebuggerDisplay attribute.
  141. 2005-10-08 Gert Driesen <[email protected]>
  142. * XPathNavigator.cs: [NET_2_0] Added DebuggerDisplay attribute,
  143. added ReplaceRange and DeleteRange methods.
  144. * XPathNodeIterator.cs: [NET_2_0] Added DebuggerDisplay attribute.
  145. 2004-09-22 Atsushi Enomoto <[email protected]>
  146. * Expression.cs : Now that managed collation is default, we don't need
  147. reversive case-order anymore.
  148. 2004-09-21 Atsushi Enomoto <[email protected]>
  149. * XPathNavigator.cs : added NavigatorComparer.
  150. * XPathComparer.cs : XPathNavigatorComparer implements
  151. IEqualityComparer under NET_2_0 profile.
  152. 2005-08-31 Sebastien Pouliot <[email protected]>
  153. * XPathException.cs: Added a Demand for SerializationFormatter on
  154. GetObjectData method.
  155. 2005-08-03 Gert Driesen <[email protected]>
  156. * XPathNavigator.cs: GetNamespacesInScope returns generic IDictionary
  157. in .NET 2.0 Beta 2.
  158. 2004-07-23 Atsushi Enomoto <[email protected]>
  159. * Expression.cs : don't expect namespace resolver; namespace could be
  160. supplied in QName without nsresolver need (i.e. SelectChildren()).
  161. Fixed bug #75609.
  162. 2005-06-09 Andrew Skiba <[email protected]>
  163. * XmlDefaultContext.cs : add TARGET_JVM for roundtrip bug
  164. 2004-06-07 Atsushi Enomoto <[email protected]>
  165. * Expression.cs : set TARGET_JVM where collation matters.
  166. 2004-05-05 Atsushi Enomoto <[email protected]>
  167. * XPathAtomicValue.cs :
  168. it is now XmlAtomicValue and in sys.xml.schema.
  169. * XPathNavigator.cs, Expression.cs :
  170. removed atomizedName related 2.0 members (deprecated).
  171. 2004-05-05 Atsushi Enomoto <[email protected]>
  172. * XPathExpression.cs : added static Compile().
  173. * XPathNavigator.cs :
  174. Use XPathExpression.Compile() for now.
  175. Updated tree modification API to 2.0 beta2.
  176. * XPathItem.cs, XPathNavigator.cs, XPathAtomicValue.cs :
  177. updated to 2.0 beta2 API.
  178. * XPathResultType.cs : removed [Serializable].
  179. * XmlNodeChangeType.cs : removed obsolete file.
  180. 2004-03-25 Atsushi Enomoto <[email protected]>
  181. * XPathNavigator.cs : 2.0 build fix
  182. 2004-03-25 Atsushi Enomoto <[email protected]>
  183. * Expression.cs : In ExprSLASH2, replace A//B with A/descendant::B if
  184. B is child axis test (thus peer&subtree optimization became possible)
  185. Fixed warning (incorrect variable let).
  186. 2004-03-25 Atsushi Enomoto <[email protected]>
  187. * XPathNavigator.cs : reduced some Clone().
  188. Simplified ComparePosition().
  189. * Iterator.cs : some iterators are not actually reverse axis.
  190. 2004-03-22 Atsushi Enomoto <[email protected]>
  191. * Expression.cs : EvaluateBoolean() for RTF should check return true
  192. for empty elements. Fixed static analysis for RTF.
  193. 2004-03-22 Atsushi Enomoto <[email protected]>
  194. * Parser.jay, Tokenizer.cs : Now they are used as common code base for
  195. XPath parser and XSLT pattern parser. Makefile now creates two
  196. set of sources of them. (This change takes effect on the next change).
  197. 2004-03-16 Atsushi Enomoto <[email protected]>
  198. * Parser.jay : rewrote step part to be reusable for upcoming XSLT
  199. pattern parser.
  200. 2004-03-16 Atsushi Enomoto <[email protected]>
  201. * Iterator.cs : reduced extra clone.
  202. 2004-03-15 Atsushi Enomoto <[email protected]>
  203. * DefaultContext.cs,
  204. Expression.cs,
  205. Iterator.cs : Now RequireSorting is not required in BaseIterator
  206. (it is now fully in Expression).
  207. Removed the last ListIterator .ctor() argument.
  208. 2004-03-15 Atsushi Enomoto <[email protected]>
  209. * XPathNavigator.cs : In ComparePosition(), make use of IsDescendant().
  210. 2004-03-14 Atsushi Enomoto <[email protected]>
  211. * Expression.cs,
  212. DefaultContext.cs : Basic constant folding optimization (not so
  213. effective right now). Unified number-to-string conversion code into
  214. XPathFunctions.ToString(double) to avoid roundtrip format right now.
  215. * Iterator.cs : removed unused code.
  216. 2004-03-11 Atsushi Enomoto <[email protected]>
  217. * Iterator.cs : more clone reduction.
  218. 2004-03-11 Atsushi Enomoto <[email protected]>
  219. * Expression.cs, DefaultContext.cs : more Peer overrides.
  220. 2004-03-11 Atsushi Enomoto <[email protected]>
  221. * Expression.cs,
  222. DefaultContext.cs : Removed unused NeedAbsoluteMatching.
  223. Added Peer and Subtree (for "peer & subtree optimization. See:
  224. http://idealliance.org/papers/dx_xmle04/papers/02-03-02/02-03-02.html
  225. Fixed some ToString() that caused NullReferenceException.
  226. * Iterator.cs : Predicate does not affect on RequireSorting.
  227. Added SimpleSlashIterator for peer & subtree optimization.
  228. Added PreserveWhitespace() consideration in BaseIterator.MoveNext().
  229. 2004-03-09 Atsushi Enomoto <[email protected]>
  230. * Expression.cs,
  231. Iterator.cs, :
  232. SlashIterator is now constructed with requireSorting parameter
  233. that thus just use RequireSorting from both left/right Expressions,
  234. not iterators.
  235. When attribute axis is on the left expression, the result needs to
  236. be sorted.
  237. 2004-03-09 Atsushi Enomoto <[email protected]>
  238. * Iterator.cs : Now for most of iterator types, Current property always
  239. returns the same instance. It results in huge memory reduction.
  240. 2004-03-04 Atsushi Enomoto <[email protected]>
  241. * Iterator.cs : (SlashIterator.MoveNext()) For SortedList.Add(), the
  242. key should be iterator itself. Key by list count never makes sense.
  243. 2004-03-04 Atsushi Enomoto <[email protected]>
  244. * Expression.cs : Significant whitespace nodes must be returned in
  245. text() NodeTypeTest.
  246. 2004-02-23 Atsushi Enomoto <[email protected]>
  247. * Expression.cs : xsl:sort case-order was not handled properly.
  248. 2004-02-23 Atsushi Enomoto <[email protected]>
  249. * Iterator.cs :
  250. In FollowingIterator, attribute and namespace nodes should be
  251. considered to have following nodes. See XPath 1.0 section 5 (esp.
  252. the description on "document order").
  253. On fixing @*/following::*, attribute nodes are regarded as to be
  254. RequireSorting = true (which might result in duplicate).
  255. 2004-02-18 Atsushi Enomoto <[email protected]>
  256. * Expression.cs : string() function expects "Infinity" and "-Infinity"
  257. instead of "INF" for conversion from number. XmlConvert is for XSD,
  258. not for XSLT.
  259. 2004-02-09 Atsushi Enomoto <[email protected]>
  260. * Expression.cs : RelationalExpr was comparing number and node in
  261. reverse order. Patch by Kazuki Oikawa. Fixed bug #72343.
  262. RelationalExpr should also handle result tree fragment as node-set
  263. as well as EqualityExpr. This fixes RTF case wrt #72343.
  264. 2004-02-08 Atsushi Enomoto <[email protected]>
  265. * Expression.cs : tiny code format fix by Andrew Skiba.
  266. 2004-12-26 Atsushi Enomoto <[email protected]>
  267. * XPathNavigator.cs : Added CheckValidity() and ValueType.
  268. For SetTypedValue(), throw NotSupportedException instead of
  269. NotImplementedException.
  270. 2004-12-16 Atsushi Enomoto <[email protected]>
  271. * XPathNavigator.cs :added MoveToFollowing(), ReplaceSelf() and
  272. all the missing attributes.
  273. 2004-12-04 Atsushi Enomoto <[email protected]>
  274. * XPathDocument.cs : switch to DTMXPathNavigator2 which fully
  275. eliminated string fields from struct.
  276. (When we switch from struct to class, revert this change to use
  277. DTMXPathNavigator, since class-based DTMXPathNavigator2 is rather
  278. wasting processing speed.)
  279. 2004-12-02 Atsushi Enomoto <[email protected]>
  280. * Iterator.cs : when PredicateIterator has a numeric predicate, it
  281. will never be true twice. So just break up the iteration on true.
  282. * XPathNavigator.cs : implemented LookupPrefix().
  283. * Expression.cs : ExprParens.Optimize() could just return the content
  284. expression.
  285. 2004-12-01 Atsushi Enomoto <[email protected]>
  286. * IXPathChangeNavigable.cs,
  287. XmlChangeFilters.cs,
  288. XPathDocumentNodeChangedAction.cs : removed old files.
  289. 2004-12-01 Atsushi Enomoto <[email protected]>
  290. * Iterator.cs : with related to the previous patch, many comments
  291. got making no sense. Thanks to Harinath.
  292. 2004-12-01 Atsushi Enomoto <[email protected]>
  293. * Iterator.cs : actually I mean this patch.
  294. 2004-12-01 Atsushi Enomoto <[email protected]>
  295. * Iterator.cs : Create _current clone only when required. So just set
  296. null when MoveNextCore() succeeded (except for some cases that
  297. _current is _nav, such as SelfIterator).
  298. 2004-11-30 Atsushi Enomoto <[email protected]>
  299. * Iterator.cs : SlashIterator.RequireSorting is always false. Whether
  300. it has to collect nodes in prior or not and whether it might return
  301. nodes in inconsistent order is different matter.
  302. (It still needs to store nodes when either of branches requires
  303. sorting, because they might return the same node later.)
  304. 2004-11-30 Atsushi Enomoto <[email protected]>
  305. * Iterator.cs : reduced some extraneous ComparePosition() that could
  306. be written as IsSamePosition(). ParentIterator doesn't have to be
  307. RequireSorting.
  308. 2004-11-30 Atsushi Enomoto <[email protected]>
  309. * Iterator.cs : reimplemented AncestorIterator and
  310. AncestorOrSelfIterator just to collect parents and not to move to
  311. siblings. In some cases like thousands of siblings, it used to be
  312. so slow, while we usually don't have so deep ancestors.
  313. 2004-11-26 Atsushi Enomoto <[email protected]>
  314. * Expression.cs : warning removal. Added Optimize() which is not
  315. implemented at all.
  316. * Tokenizer.cs : warning elimination
  317. 2004-11-24 Atsushi Enomoto <[email protected]>
  318. * XPathEditableNavigator.cs, XPathChangeNavigator.cs,
  319. IXPathEditable.cs : more removal of oldies.
  320. 2004-11-24 Atsushi Enomoto <[email protected]>
  321. * NodeChangedEventArgs.cs, NodeChangedEventHandler.cs : removed oldies.
  322. 2004-11-08 Atsushi Enomoto <[email protected]>
  323. * Tokenizer.cs : just use raw string instead of char[].
  324. * XPathNavigator.cs : reuse NameTable when creating XmlTextReader.
  325. 2004-11-07 Atsushi Enomoto <[email protected]>
  326. * Iterator.cs :
  327. - Made copy constructor certainly different from other constructors.
  328. - Position is never computed in each derived type. All MoveNext() are
  329. now MoveNextCore().
  330. - Most of the protected members could just be private.
  331. 2004-11-05 Atsushi Enomoto <[email protected]>
  332. * Expression.cs, XPathNavigator.cs : hold raw expression field for
  333. get_Expression. It is preparation for expression optimization.
  334. 2004-11-05 Atsushi Enomoto <[email protected]>
  335. * Iterator.cs : SimpleIterator._current could be cloned only when
  336. it is required.
  337. 2004-11-05 Atsushi Enomoto <[email protected]>
  338. * Iterator.cs : Some removal of Clone() were harmless.
  339. 2004-10-22 Atsushi Enomoto <[email protected]>
  340. * XPathDocument.cs : now all the new stuff that used to be in 2.0 are
  341. reverted.
  342. * XPathEditableNavigator.cs : It will be removed. Right now modified
  343. a bit to pass build.
  344. * XPathNavigator.cs : Added members that are merged from
  345. XPathEditableNavigator. Updated members name.
  346. 2004-10-14 Atsushi Enomoto <[email protected]>
  347. * Iterator.cs :
  348. - Added WrapperIterator to return BaseIterator in such case that
  349. variable reference is resolved to XPathNodeIterator. This fixes
  350. bug #68267.
  351. - Path ".." is reverse axis (actually no effect).
  352. - Fixed DescendantIterator.Clone() that missed "_finished" field.
  353. * Expression.cs :
  354. In ExprVariable.Evaluate(), use WrapperIterator() for custom
  355. XPathNodeIterator.
  356. 2004-10-09 Atsushi Enomoto <[email protected]>
  357. * XPathAtomicValue.cs : Init(string, XmlSchemaType) is private.
  358. 2004-10-05 Atsushi Enomoto <[email protected]>
  359. * XPathAtomicValue.cs : missing Init() definition for float and string;
  360. latter one resulted in infinite loop in Init(object,XmlSchemaType).
  361. 2004-10-04 Atsushi Enomoto <[email protected]>
  362. * XPathNavigator.cs : TypedValue could be implemented.
  363. * XPathEditableNavigator.cs : removed some MonoTODO since now there
  364. are implementations.
  365. 2004-09-13 Atsushi Enomoto <[email protected]>
  366. * XPathAtomicValue.cs : All .ctor() are separeted from Init().
  367. In .ctor(object, XmlSchemaType):
  368. - For lists that contains just one item, Init() recursively.
  369. - For XPathAtomicValue, Init() recursively for its content fields.
  370. For Value and TypedValue, consider typecode from XmlSchemaType.
  371. 2004-09-06 Atsushi Enomoto <[email protected]>
  372. * XPathEditableNavigator.cs :
  373. AppendChild(xmlReader) ignored nodes after than first one, and
  374. resulted in infinite loop.
  375. Added get_OuterXml overrides. set_OuterXml should not move to
  376. parent before deleting current.
  377. 2004-08-25 Atsushi Enomoto <[email protected]>
  378. * XPathAtomicValue.cs : Value was not returning expected value when
  379. it is created as new XPathAtomicValue (object, XmlSchemaType).
  380. Compute stringValue and reuse.
  381. * XPathNavigator.cs : Temporarily stubbed as to ignore SchemaInfo
  382. (for checking XQuery implementation).
  383. 2004-08-25 Atsushi Enomoto <[email protected]>
  384. * XPathAtomicValue.cs : Handle .ctor() with object parameter more
  385. precisely (still not enough, for list argument).
  386. Removed commended blocks.
  387. 2004-08-24 Atsushi Enomoto <[email protected]>
  388. * XPathAtomicValue.cs : DateTime should be convertible to string.
  389. Use schemaType's TypeCode for .ctor() that takes object.
  390. * XPathNavigator.cs : copied get_InnerXml from XPathEditableNavigator.
  391. * XPathEditableNavigator.cs : set_InnerXml should be different (new)
  392. property from get_InnerXml. Removed get_InnerXml and get_OuterXml
  393. overrides.
  394. 2004-08-23 Atsushi Enomoto <[email protected]>
  395. * XPathAtomicValue.cs, XPathNavigator.cs : Eliminate MS.Internal.Xml.*.
  396. 2004-08-03 Atsushi Enomoto <[email protected]>
  397. * XPathEditableNavigator.cs : implemented some editor support methods.
  398. 2004-08-02 Atsushi Enomoto <[email protected]>
  399. * XPathDocument.cs :
  400. - For .NET 2.0, added a switch to support new XPathDocument2.
  401. If switch is off, then it uses DTM.
  402. - Implemented remaining 2.0 bits (except for Obsolete ones).
  403. To use them in XPathDocument, set environment MONO_XPATH_DOCUMENT_2=yes
  404. (It is still too unstable to pass all nunit tests and standalone XSLT
  405. tests).
  406. 2004-07-29 Atsushi Enomoto <[email protected]>
  407. * XPathNavigator.cs : Implemented ReadSubtree().
  408. 2004-07-28 Atsushi Enomoto <[email protected]>
  409. * XPathDocument.cs : for .ctor() and .ctor(XmlNameTable), now it
  410. creates Mono.Xml.XPath.XPathEditableDocument and thus supports
  411. IXPathEditable.CreateEditor().
  412. 2004-07-28 Atsushi Enomoto <[email protected]>
  413. * XPathEditableNavigator.cs : Implemented InsertAfter() and
  414. PrependChild(); they are virtual, not abstract.
  415. * XPathNavigator.cs :
  416. Implemented many 2.0 virtual properties and methods that were
  417. abstract in 1.x.
  418. Implemented some Select() methods that uses IXmlNamespaceResolver.
  419. Implemented most of ValueAsXxx() using XQueryConvert.
  420. IsNode is always true. Implemented OuterXml and WriteSubtree() (but
  421. actually they don't work because it depends on ReadSubtree()).
  422. 2004-07-26 Atsushi Enomoto <[email protected]>
  423. * XPathDocument.cs : added missing && not-likely-to-be-removed members.
  424. * XPathEditableNavigator.cs : added BuildSubTree().
  425. * XPathException.cs : added missing methods. Hide Message in NET_2_0.
  426. 2004-07-23 Atsushi Enomoto <[email protected]>
  427. * XPathNodeIterator.cs : implemented 2.0 GetEnumerator().
  428. 2004-07-21 Atsushi Enomoto <[email protected]>
  429. * XPathExpression.cs, Expression.cs :
  430. Added SetContext(IXmlNamespaceResolver).
  431. * NodeChangedEventArgs.cs : Added missing [MonoTODO].
  432. * XPathAtomicValue.cs : Halfly implemented.
  433. * XPathDocument.cs : Added 2.0 members.
  434. * XPathDocumentNodeChangedAction.cs : updated member names.
  435. * XPathEditableNavigator.cs : Added missing 2.0 members and MonoTODO.
  436. * XPathNavigator.cs : Added missing 2.0 members.
  437. Fixed some members as virtual->override.
  438. 2004-07-13 Atsushi Enomoto <[email protected]>
  439. * XmlNodeChageType.cs, XmlChangeFilters.cs : fixed enum values.
  440. * XPathResultType.cs : marked [MonoFIX] on .Navigator.
  441. 2004-07-11 Atsushi Enomoto <[email protected]>
  442. * Expression.cs, Iterator.cs, XPathNavigator.cs :
  443. Use IXmlNamespaceResolver for net 2.0. Removed unused code.
  444. * XPathEditableNavigator.cs : fixed namespace.
  445. * XPathNavigator.cs :
  446. Fixed inheritance. Added missing MonoTODO.
  447. Removed old .net 1.2 code.
  448. 2004-06-18 Atsushi Enomoto <[email protected]>
  449. * DefaultContext.cs : Globalization.
  450. * Iterator.cs : In SlashIterator.MoveNext() position might keep 0
  451. in case of empty list. Thus extraneous iteration might happened.
  452. Removed unused (and clone unsafe) EnumeratorIterator.
  453. 2004-06-06 Atsushi Enomoto <[email protected]>
  454. * XPathDocument.s : The previous patch is still incomplete to close.
  455. 2004-06-05 Atsushi Enomoto <[email protected]>
  456. * XPathDocument.cs : close self-opened XmlTextReader in .ctor().
  457. 2004-06-03 Atsushi Enomoto <[email protected]>
  458. * Expression.cs : LookupNamespace() only allows already-atomized names.
  459. * XPathEditableNavigator.cs : removed incorrect set_OuterXml() and
  460. set_InnerXml().
  461. 2004-05-22 Atsushi Enomoto <[email protected]>
  462. * DefaultContext.cs : Add XPathNavigator input support for ToBoolean()
  463. and ToNavigator().
  464. * Expression.cs : In Equality comparison, evaluate XPathNavigator in
  465. the same as well as NodeSet. This fixes bug #59134.
  466. 2004-05-22 Atsushi Enomoto <[email protected]>
  467. * XPathAtomicValue.cs : missed NET_2_0.
  468. 2004-05-22 Atsushi Enomoto <[email protected]>
  469. * IXPathChangeNavigable.cs,
  470. IXPathEditable.cs,
  471. NodeChangedEventArgs.cs,
  472. NodeChangedEventHandler.cs,
  473. XPathAtomicValue.cs,
  474. XPathChangeNavigator.cs,
  475. XPathDocumentNodeChangedAction.cs,
  476. XPathEditableNavigator.cs,
  477. XPathItem.cs,
  478. XmlChangeFilters.cs,
  479. XmlNodeChangeType.cs : added NET_2_0 classes.
  480. * XPathDocument.cs,
  481. XPathNavigator.cs : updated NET_2_0 members.
  482. 2004-05-20 Atsushi Enomoto <[email protected]>
  483. * Expression.cs : We should not catch all kind of exception. Just
  484. throwing any kind of exception would be preferable.
  485. Added support for XPathNavigator values.
  486. 2004-05-13 Atsushi Enomoto <[email protected]>
  487. * DefaultContext.cs : Removed MonoTODO. done.
  488. * Expression.cs : handle XPathResultType.Navigator in some places and
  489. removed MonoTODO. Mark MonoTODO with explicit comments (though they
  490. are mostly pointing out possibilities of optimization).
  491. Removed extra check that depended on the old bugs.
  492. * XPathResultType.cs : Fixed .Navigator that had the same value as
  493. .String.
  494. 2004-05-12 Atsushi Enomoto <[email protected]>
  495. * Parser.jay : made class internal.
  496. 2004-03-16 Atsushi Enomoto <[email protected]>
  497. * XPathNavigator.cs, Iterator.cs : Considered detached nodes, the
  498. result of MoveToParent() should be checked.
  499. 2004-02-17 Atsushi Enomoto <[email protected]>
  500. * XPathNavigator.cs : Only child and attribute axes are allowed for
  501. Matches().
  502. * Expression.cs : Added IsPositional property.
  503. * DefaultContext.cs : Added some overrides.
  504. 2004-02-16 Atsushi Enomoto <[email protected]>
  505. * XPathNavigator.cs : no, its still not ok. comment out now.
  506. 2004-02-16 Atsushi Enomoto <[email protected]>
  507. * Expression.cs : Added EvaluatedNodeType and NeedAbsoluteMatching
  508. to reduce extraneous Matches() trial.
  509. * Iterator.cs : Removed unused MergedIterator.
  510. * XPathNavigator.cs : Optimized Matches() not to evaluate ancestors
  511. unnecessarily. (Test with NeedAbsoluteMatching).
  512. 2004-02-10 Atsushi Enomoto <[email protected]>
  513. * Iterator.cs : Added overriden Count properties for some iterators
  514. (this fixes the half of #50678).
  515. Added ListIterator class (which can reduce GetEnumerator()).
  516. In some places we can omit clone for Current property, so added
  517. some check logic (It has no effect as yet).
  518. * Expression.cs, DefaultContext.cs :
  519. use ListIterator instead of EnumeratorIterator.
  520. 2004-02-08 Atsushi Enomoto <[email protected]>
  521. * DefaultContext.cs, Expression.cs, Iterator.cs :
  522. tiny foreach elimination.
  523. 2004-02-05 Atsushi Enomoto <[email protected]>
  524. * DefaultContext.cs : trivial processing order fix.
  525. 2004-01-27 Atsushi Enomoto <[email protected]>
  526. * DefaultContext.cs : Avoid exception if possible.
  527. * Iterator.cs : Fixed PrecedingSiblingIterator.MoveNext(). When the
  528. nav was positioned at the first, it incorrectly points itself.
  529. Don't add names to name table while it is useless and expensive.
  530. 2004-01-08 Nick Drochak <[email protected]>
  531. * Iterator.cs: Removed unused variable.
  532. 2003-12-18 Atsushi Enomoto <[email protected]>
  533. * Parser.jay : now it supresses error output from jay.
  534. * DefaultContext.cs : (XPathFunctionSubstring) exclude -Infinity.
  535. * Tokenizer.cs : better error message.
  536. * XPathDocument.cs : Use XmlValidatingReader to support id() function.
  537. (just found MS.NET actually supports it)
  538. 2003-12-16 Atsushi Enomoto <[email protected]>
  539. * Iterator.cs : On its iteration, moving Current must not affect to
  540. MoveNext(). To assure this, Current must be a clone of navigator.
  541. Removed unused code.
  542. 2003-12-07 Atsushi Enomoto <[email protected]>
  543. * Tokenizer.cs : Removed some TODOs. (trivial ;-)
  544. * Iterator.cs : ParensIterator can inherit from BaseIterator.
  545. SlashIterator copy .ctor() always failed to clone. This fixes Count.
  546. 2003-12-03 Atsushi Enomoto <[email protected]>
  547. * Expression.cs : XPathSorters.Compare() should compare document
  548. position. See last sentence of XSLT 1.0 secion 10.
  549. 2003-12-03 Atsushi Enomoto <[email protected]>
  550. * DefaultContext.cs : Overrode all functions' ToString().
  551. XPathFunctions.ToNumber() trims whitespaces at both side.
  552. Fixed NullReferenceException in normalize-space().
  553. * Iterator.cs : Fixed AncestorOrSelfIterator.MoveNext() didn't handle
  554. attribute or namespace node correctly.
  555. SlashIterator.Clone() didn't clone "next node iterator" correctly.
  556. EnumeratorIterator.ctor() should raise an error (not at Clone())
  557. when the target IEnumerator is not ICloneable.
  558. 2003-11-28 Atsushi Enomoto <[email protected]>
  559. * Expression.cs : namespace axis now traversed in reverse order, so it
  560. requires sorting.
  561. * Iterator.cs : UnionIterator.Clone() was incomplete.
  562. NamespaceItarator() should be reverse order (special handling
  563. because of XPathNavigator specification).
  564. 2003-11-24 Atsushi Enomoto <[email protected]>
  565. * Iterator.cs : PrecedingIterator.MoveNext() now breaks up at Root.
  566. * XPathNavigator.cs : ComparePosition() didn't handle attributes
  567. correctly.
  568. 2003-11-24 Atsushi Enomoto <[email protected]>
  569. * Parser.jay, Expression.cs, Iterator.cs :
  570. Added ExprParens and ParensIterator classes which is used to handle
  571. precedence of parenthesized expressions.
  572. (e.g. consider "(preceding::*)[3]" and "preceding::[3]" )
  573. * Expression.cs, Iterator.cs :
  574. Added RequireSorting property for each Expr and BaseIterator classes.
  575. SlashIterator.MoveNext() now considers correct sorting. But
  576. considering performance, it separates two logics, sorted and sortless
  577. depending on RequireSorting of left iterator and right expression.
  578. * Iterator.cs :
  579. SimpleIterator.ctor() should consider when nav is null.
  580. FollowingIterator.MoveNext() and PrecedingIterator.MoveNext() should
  581. not return any nodes.
  582. AncestorIterator and AncestorOrSelfIterator copy ctr() should clone
  583. positions.
  584. AncestorIterator.MoveNext() should skip Root if context node is
  585. Root itself.
  586. FollowingIterator.MoveNext() should not handle children of context
  587. itself.
  588. PrecedingIterator.MoveNext() should skip its ancestors.
  589. AxisIterator.ReverseAxis should be dependent on its containing iter.
  590. UnionIterator.MoveNext() should consider comparison of nodes in
  591. different document. The behavior is implementation dependent.
  592. (see XSLT spec 12.1)
  593. 2003-11-19 Atsushi Enomoto <[email protected]>
  594. * Added XPathComparer.cs
  595. * DefaultContext.cs : Fixed XPathFunctionId.Evaluate() to iterate base
  596. iterator correctly, and sort results.
  597. 2003-11-19 Atsushi Enomoto <[email protected]>
  598. * DefaultContext.cs : Imcomplete fix ;-)
  599. 2003-11-19 Atsushi Enomoto <[email protected]>
  600. * DefaultContext.cs : XPathFunctions.ToNumber() should catch overflow.
  601. XPathFunctionId.cs : Exposed Id expression.
  602. * Expression.cs : Added ExprLiteral.Value, and class ExprParens (it
  603. will be used to solve evaluation precedence problem).
  604. 2003-11-09 Atsushi Enomoto <[email protected]>
  605. * Iterator.cs : Fixed SlashIterator that might return nodes 1)in
  606. inconsistent order, and 2)may return duplicate result nodes.
  607. 2003-11-06 Ben Maurer <[email protected]>
  608. * Iterator.cs: (AxisIterator.ComparablePosition): Remove. Let
  609. it inherit from the base class. This made b[2] evaluated on
  610. <a /><b /><c /><a /><b /><c /> return the first b node because
  611. in the ChildIterator it was the second node and seemed to satsify
  612. the predicate.
  613. 2003-11-04 Atsushi Enomoto <[email protected]>
  614. * Iterator.cs : Added bool ReverseAxis property to identify whether
  615. the iterator is in reverse order or not. Added ComparablePosition
  616. for correct position comparison for PredicateIterator and reverse-
  617. order-axes. Modified AncestorIterator, AncestorOrSelfIterator,
  618. PrecedingIterator and PrecedingSiblingIterator to make MoveNext()
  619. return their nodes in document order. This fixes bugzilla #39079.
  620. 2003-10-15 Atsushi Enomoto <[email protected]>
  621. * Iterator.cs : DescendantIterator and FollowingIterator also should
  622. not MoveNext() after they reached to the end.
  623. 2003-10-13 Atsushi Enomoto <[email protected]>
  624. * Iterator.cs : Fixed UnionIterator who ignores document order.
  625. Fixed SlashIterator whose MoveNext() should finish at its end.
  626. 2003-09-27 Ben Maurer <[email protected]>
  627. * Iterator.cs, Expression.cs, XPathNavigator.cs: In AxisIterator
  628. use NameTable so we dont call strcmp.
  629. 2003-09-27 Ben Maurer <[email protected]>
  630. * DefaultContext.cs (translate): translate ("abc", "c", "") = "ab"
  631. not "abc".
  632. * Iterator.cs, Expression.cs: All axes are
  633. SimpleIterators. SimpleIterators are gaurenteed to give the same
  634. XPathNavigator in Current. Make AxisIterator take a
  635. SimpleIterator, not any old BaseIterator. Will allow us to make
  636. NameTable optimizations and avoid quite a few strcmp's.
  637. 2003-09-24 Ben Maurer <[email protected]>
  638. * Expression.cs: make // work right, must use another slash itr.
  639. 2003-09-21 Ben Maurer <[email protected]>
  640. * Expression.cs: cant use $$ before assigned.
  641. 2003-09-21 Ben Maurer <[email protected]>
  642. * Expression.cs, Parser.jay, XPathNavigator.cs: api beautification.
  643. 2003-09-20 Ben Maurer <[email protected]>
  644. * Expression.cs: num != double.NaN does not work.
  645. 2003-09-19 Ben Maurer <[email protected]>
  646. * Expression.cs: in NodeTypeTest dont throw an exception if it is
  647. an unknown node type (allows for better Pattern debugging).
  648. 2003-09-17 Ben Maurer <[email protected]>
  649. * DefaultContext.cs: implement sum () and translate ().
  650. 2003-09-13 Ben Maurer <[email protected]>
  651. * XPathNavigator.cs: Make methods where you pass in the context,
  652. so that we dont have to clone expressions so much.
  653. 2003-09-06 Ben Maurer <[email protected]>
  654. * DefaultContext.cs, Expresssion.cs, Parser.jay: Rewrite so that
  655. system functions are actually expressions. Will allow for some
  656. nice optimizations.
  657. 2003-08-25 Ben Maurer <[email protected]>
  658. * XPathNavigator.cs: "Smart" behavior in Matches. Nice 8x speed
  659. improvement in the method (5ms/call -> .7 ms / call) measured by
  660. monodoc's rendering of N:System.
  661. * Expression.cs: Utility methods to support above.
  662. 2003-08-13 Piers Haken <[email protected]>
  663. * Iterator.cs:
  664. fix MergedIterator.Clone(), now clones other's iterators
  665. fix DescendantIterator.Clone(), now copies depth
  666. make iterator cloning constructors more type-specific
  667. 2003-08-01 Piers Haken <[email protected]>
  668. * Expression.cs: added NodeNamespaceTest
  669. * XPathNavigator.cs: implement Select* with namespaces
  670. 2003-07-31 Ben Maurer <[email protected]>
  671. * Iterator.cs: Allow creation of an EnumeratorIterator with an
  672. XmlNamespaceManager.
  673. 2003-07-31 Piers Haken <[email protected]>
  674. * Parser.jay:
  675. Nested predicates (uses ExprFilter instead)
  676. more type safety
  677. make grammar look more like w3c spec
  678. * Expression.cs:
  679. remove ExprStep, ExprPredicates
  680. NodeTest is now a NodeSet
  681. more type-safety
  682. * Iterator.cs:
  683. PredicateIterator now only takes a single predicate expression
  684. more type-safety
  685. * XPathNavigator.cs:
  686. simplified SelectTest
  687. * XPathException.cs:
  688. fixed indenting
  689. 2003-07-30 Duncan Mak <[email protected]>
  690. * XPathException.cs
  691. (GetObjectData):
  692. (Message): Added.
  693. 2003-07-29 Piers Haken <[email protected]>
  694. * DefaultContext.cs: 'local-name' returns String, not NodeSet!
  695. 2003-07-29 Piers Haken <[email protected]>
  696. * XPathNavigator.cs:
  697. * Expression.cs:
  698. add typesafe Evaluate* methods
  699. 2003-07-29 Piers Haken <[email protected]>
  700. * DefaultContext.cs: fix 'substring-after'
  701. 2003-07-29 Piers Haken <[email protected]>
  702. * Iterator.cs: fix PredicateIterator.CurrentPosition bug (it wasn't incrementing)
  703. 2003-07-29 Ben Maurer <[email protected]>
  704. * Iterator.cs: dont throw exceptions on tostring ()
  705. 2003-07-28 Piers Haken <[email protected]>
  706. * DefaultContext.cs: better handling of null argument lists
  707. * XPathNavigator.cs: implement ComparePosition
  708. 2003-07-28 Piers Haken <[email protected]>
  709. * Expression.cs: boolean operators: handle comparing .Any better
  710. 2003-07-28 Piers Haken <[email protected]>
  711. * DefaultContext.cs: count() should return a double
  712. * Expression.cs: better support for handling non-double numbers
  713. 2003-07-28 Piers Haken <[email protected]>
  714. * DefaultContext.cs: better function param matching
  715. 2003-07-27 Piers Haken <[email protected]>
  716. * Expression.cs:
  717. * DefaultContext.cs:
  718. catch FormatExceptions while parsing numbers
  719. 2003-07-27 Piers Haken <[email protected]>
  720. * Expression.cs:
  721. fix case sorting order
  722. allow EvaluateNumber to take XPathResultType.Any
  723. 2003-07-27 Piers Haken <[email protected]>
  724. * Expression.cs:
  725. * Tokenizer.cs:
  726. don't pass null to XmlQualifiedName constructor
  727. 2003-07-27 Piers Haken <[email protected]>
  728. * DefaultContext.cs: allow 'concat' to take arbitrary-typed arguments (spec?)
  729. 2003-07-27 Piers Haken <[email protected]>
  730. * Expression.cs: allow EvaluateNodeSet to take XPathResultType.Any
  731. 2003-07-26 Piers Haken <[email protected]>
  732. * Expression.cs: fix function evaluation with ambigous argument types
  733. * XPathNavigator.cs: fix silly null reference bug
  734. 2003-07-26 Piers Haken <[email protected]>
  735. * Iterator.cs:
  736. * DefaultContext.cs:
  737. ArrayListIterator->EnumeratorIterator
  738. * Expression.cs: add sorting support
  739. 2003-07-26 Piers Haken <[email protected]>
  740. * Tokenizer.cs:
  741. * Parser.jay:
  742. move QName parsing into tokenizer
  743. * Expression.cs:
  744. fix evaluating XPathResultType.Any
  745. fix ExprDiv.ToString()
  746. fix NodeTypeTest.ToString() (for namespace axis)
  747. 2003-07-25 Piers Haken <[email protected]>
  748. * Expression.cs: return clone of $var evaluation
  749. 2003-07-26 Piers Haken <[email protected]>
  750. * Iterator.cs: add setter for NamespaceManager
  751. * XPathNavigator.cs: propagate NamespaceManager from context on Evaluate
  752. * Expression.cs: fix func/var exception strings
  753. 2003-07-25 Piers Haken <[email protected]>
  754. * Expression.cs: implement ExprFilter.Evaluate
  755. 2003-07-25 Piers Haken <[email protected]>
  756. * Expression.cs: implement ExprVariable.Evaluate
  757. 2003-07-24 Ben Maurer <[email protected]>
  758. * DefaultContext.cs: implement lang ()
  759. 2003-07-24 Piers Haken <[email protected]>
  760. * Parser.jay:
  761. * Expression.cs:
  762. allow ExprUNION to take non-nodeset (eg, $var) arguments
  763. 2003-07-24 Piers Haken <[email protected]>
  764. * Tokenizer.cs: fix variable references
  765. * Parser.jay:
  766. * Expression.cs:
  767. * XPathNavigator.cs:
  768. use XmlQualifiedName
  769. 2003-06-30 Atsushi Enomoto <[email protected]>
  770. * XPathDocument.cs : removed Driver class and restored authors' name
  771. (though it is completely rewrote).
  772. 2003-06-30 Atsushi Enomoto <[email protected]>
  773. * XPathDocument.cs : Replaced existing stub class with real
  774. XPathDocument implementation.
  775. 2003-04-28 Piers Haken <[email protected]>
  776. * Parser.jay, Tokenizer.cs: more compliant lexical parsing of ambiguous tokens
  777. 2003-03-07 Piers Haken <[email protected]>
  778. * Tokenizer.cs: allow '.'s in NCNames
  779. 2003-03-07 Piers Haken <[email protected]>
  780. * Exression.cs:
  781. * DefaultContext.cs:
  782. fixed function argument resolution
  783. 2003-02-09 Piers Haken <[email protected]>
  784. * XPathNavigator.cs:
  785. * Iterator.cs:
  786. * Expression.cs: fix namespace handling
  787. 2003-01-04 Piers Haken <[email protected]>
  788. * Parser.*: Remove extraneous "using" that was stopping the build. Permanently thisi time ;-)
  789. 2003-02-02 Piers Haken <[email protected]>
  790. * Parser.jay: add token names
  791. * Tokenizer.cs: fix NCName tokenization
  792. 2003-01-02 Atsushi Enomoto <[email protected]>
  793. * Tokenizer.cs : Fixed ParseIdentifier to allow digits.
  794. (It should be a temporary fix.)
  795. 2002-09-22 Nick Drochak <[email protected]>
  796. * Parser.cs: Remove extraneous "using" that was stopping the build.
  797. 2002-09-21 Piers Haken <[email protected]>
  798. * XPathException: implementation
  799. * Expression.cs:
  800. * Iterator.cs:
  801. * Parser.jay:
  802. * Tokenizer.jay:
  803. * XPathNavigator.jay:
  804. use XPathException.
  805. 2002-09-13 Gonzalo Paniagua Javier <[email protected]>
  806. * Parser.cs: commented out non-existent namespace (it compiles fine
  807. with mcs because of a bug that is already on bugzilla).
  808. 2002-09-12 Piers Haken <[email protected]>
  809. * Tokenizer.cs: fix parsing numbers that start with '.'
  810. * DefaultContext.cs: use MS-compatible formatting of doubles
  811. 2002-09-12 Piers Haken <[email protected]>
  812. * Iterator.cs: added NullIterator to handle unspecified contexts
  813. * XPathNavigator.cs: use NullIterator insted of SelfIterator when context is unspecified.
  814. * XPathNodeIterator.cs: change default _count to -1 to prevent recalculations for NullIterators
  815. 2002-09-12 Piers Haken <[email protected]>
  816. * Expression.cs, Parser.jay: allow ExprSLASH to take a generic expression as its left argument.
  817. * Iterator.cs: fix SlashIterator.Clone() when _iterRight is null.
  818. * DefaultContext.cs: fix id() return type.
  819. 2002-09-03 Gonzalo Paniagua Javier <[email protected]>
  820. * DefaultContext.cs: fixed bug #28840.
  821. * Expression.cs: added FIXME.
  822. 2002-08-17 Jason Diamond <[email protected]>
  823. * XPathNavigator.cs: Fixed matching on patterns that look like
  824. absolute XPath expressions.
  825. 2002-08-17 Jason Diamond <[email protected]>
  826. * XPathNavigator.cs: Added naive (but working) implementation of
  827. Matches.
  828. 2002-07-31 Piers Haken <[email protected]>
  829. * XPathDocument.cs: simple, XmlDocument-based implementation
  830. 2002-07-25 Piers Haken <[email protected]>
  831. * DefaultContext.cs: implement XPathFunctionName 'name()' function.
  832. 2002-07-17 Piers Haken <[email protected]>
  833. * DefaultContext.cs: implement 'string-length()', 'normalize-space()'
  834. * Parser.jay: remove redundant production
  835. * Expression.cs: add switches for debugging under VS.NET
  836. 2002-07-17 Piers Haken <[email protected]>
  837. * Expression.cs: implement nodeset/nodeset comparisons (non-optimal)
  838. 2002-07-15 Piers Haken <[email protected]>
  839. * Iterator.cs:
  840. - rename UnionIterator to MergedIterator,
  841. - create new UnionIterator to implment uniqueness for '|' operator
  842. - fix position bug in ArrayListIterator.Clone()
  843. * Expression.cs: use new UnionIterator constructor syntax
  844. 2002-07-12 Piers Haken <[email protected]>
  845. * Iterator.cs: PredicateIterator: handle numeric predicates
  846. * Parser.jay: add some debugging support: yyparseDebug
  847. * Tokenizer.cs: cleanup, include '-' chars in identifier tokens
  848. 2002-06-29 Piers Haken <[email protected]>
  849. * Expression.cs:
  850. - remove dead code
  851. - NodeTest uses XPathResultType instead of internal NodeTestTypes enum
  852. - remove NodeTestTypes enum
  853. - remove NodeTestTypeAny (functionality provided by base now)
  854. - fix ExprStep to handle wildcard QNames
  855. * Parser.jay:
  856. - moved to Mono.Xml.XPath namespace
  857. - use XPathResultType
  858. - handle wildcard QNames
  859. * Tokenizer.cs: moved to Mono.Xml.XPath namespace
  860. * XPathNavigator.cs: implement
  861. - IsDescendant
  862. - SelectAncestors
  863. - SelectDescendants
  864. - SelectChildren
  865. * XPathResultType.cs: fix enum values
  866. 2002-06-24 Jason Diamond <[email protected]>
  867. * XPathScanner.cs: Removed.
  868. 2002-06-24 Dick Porter <[email protected]>
  869. * XmlCaseOrder.cs: Fix namespace
  870. 2002-06-23 Piers Haken <[email protected]>
  871. * DefaultContext.cs: implemented XPathFUnctionId
  872. * Iterator.cs: new ArrayListIterator for id() support
  873. 2002-06-23 Piers Haken <[email protected]>
  874. * XPathNavigator.cs: implement:
  875. - Compile
  876. - Evaluate
  877. - Clone
  878. - Select
  879. - ToString
  880. - some forwarding methods
  881. * XPathNodeIterator: implement caching Count
  882. * Tokenizer.cs: new XPath tokenizer
  883. * Parser.jay: new XPath grammar
  884. * Parser.cs: new precompiled XPath grammar
  885. * Expression.cs: new XPath expression objects
  886. * Iterator.cs: new XPath result/context objects
  887. * DefaultContext.cs: new XPath function binding context
  888. 2002-05-08 Tim Coleman <[email protected]>
  889. * XPathDocument.cs:
  890. * XPathException.cs: New stub files added.
  891. 2002-04-12 Duncan Mak <[email protected]>
  892. * XmlCaseOrder.cs: Moved to here from System.Xml.
  893. 2002-03-26 Jason Diamond <[email protected]>
  894. * XPathScanner.cs: Now handles name tests with wildacards. Abbreviated
  895. steps. Both absolution and relative abbreviated location paths.
  896. 2002-03-25 Jason Diamond <[email protected]>
  897. * XPathScanner.cs: Added new file. This class is supposed to be internal
  898. but that would make it impossible to test.
  899. 2002-03-08 Duncan Mak <[email protected]>
  900. * XPathNamespaceScope.cs:
  901. * XPathNodeType.cs:
  902. * XPathResultType.cs:
  903. * XmlDataType.cs:
  904. * XmlSortOrder.cs: Used EnumCheck and realigned elements to be compatible with MS
  905. implementation. XPathResultType is interesting as EnumCheck does
  906. not show the Navigator element, but shows the String element twice.
  907. 2002-03-08 Jason Diamond <[email protected]>
  908. * XmlDataType.cs, XmlSortOrder.cs, XPathNodeType.cs: Added files.
  909. 2002-03-06 Jason Diamond <[email protected]>
  910. * ChangeLog: Added to this directory.
  911. * XPathExpression.cs, XPathNamespaceScope.cs, XPathNodeIterator.cs,
  912. XPathResultType.cs: New files.
  913. * XPathNavigator.cs: Stubbed out all properties and methods.