a575963da9
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
1488 lines
49 KiB
Plaintext
1488 lines
49 KiB
Plaintext
2009-11-20 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* DefaultContext.cs : do not use sloppy XmlConvert to parse xpath
|
|
number. Fixed bug #556619.
|
|
|
|
2009-09-15 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : to support external function that returns non-
|
|
double (such as int) as number, add conversion from non-double at
|
|
evaluation. This should fix bug #498389.
|
|
|
|
2009-07-22 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : name test did not handle String.Empty cases
|
|
for name and ns (i.e. no filter). Fixed bug #515136.
|
|
|
|
2009-06-09 Gonzalo Paniagua, Miguel de Icaza <gonzalo@novell.com, miguel@novell.com>
|
|
|
|
* Expression.cs: improve the ExpressionCache, it still does not
|
|
work, but it will at least work better with multithreaded apps (we
|
|
take locks) and we use WeakReferences correctly.
|
|
|
|
For WeakReferences it is important to not depend on IsAlive to
|
|
retrieve the target (this is a documented race). IsAlive is only
|
|
useful to determine if it has already been collected, but if true,
|
|
the Target can still be released.
|
|
|
|
This race condition is exposed by #505678 on x86-64 platforms (only).
|
|
|
|
Sadly, this fix is not good enough to re-enable the cache, on
|
|
x86-64 this with a single thread, it still crashes randomly
|
|
|
|
2009-04-15 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : extensions could return null and it should be
|
|
regarded as empty node-set, not an error.
|
|
|
|
2009-03-17 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : gave up another optimization for bug #443090.
|
|
|
|
2009-03-17 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathExpression.cs : eliminate use of ExpressionCache and lose
|
|
significant performance in some use for the sake of multithreaded
|
|
use. Fixed bug #477049.
|
|
|
|
2009-01-20 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : give up sortless iterator optimization.
|
|
Fixed bug #443490.
|
|
|
|
2008-12-09 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : DescendantIterator.Clone() was not cloning current
|
|
node in new code. Fixed bug #456103.
|
|
|
|
2008-10-08 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : fix WeakReference usage for such case that it
|
|
might GC-ed between .IsAlive check and .Target retrieval.
|
|
|
|
2008-10-06 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathExpression.cs, Expression.cs : Cache compiled xpath
|
|
expressions so that they don't have to be parsed repeatedly.
|
|
|
|
2008-10-06 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : unindend cases that do not match our coding style.
|
|
|
|
2008-10-06 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : fixed peer & subtree requirement and reduced extra
|
|
dependency on RequireSorting property.
|
|
|
|
2008-10-06 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs, Iterator.cs : simplify SlashIterator by introducing
|
|
SortedIterator.
|
|
|
|
2008-10-06 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs, Iterator.cs : ChildIterator is not a SimpleIterator
|
|
now. And reduced extra clone when the context node has no child.
|
|
|
|
2008-10-03 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : now we do not seem to need clone in
|
|
SimpleIterator.Current.
|
|
|
|
2008-10-03 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : enable EnumerableIterator with some fixes.
|
|
* Iterator.cs : reduce extra steps for empty simple iterator.
|
|
|
|
2008-10-02 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs, DefaultContext.cs, XPathNavigator.cs, Expression.cs:
|
|
couple of refactoring: reduced presumption on BaseIterator (it is
|
|
premised in not a few places, but it might change; see
|
|
EnumerableIterator in XPathNavigator.cs).
|
|
Now BaseIterator.Current is always null (to clean up ambiguous
|
|
implementation state). Current property is now always moved to
|
|
the current node in the iterator when returned.
|
|
|
|
2008-09-19 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* DefaultContext.cs, Expression.cs: do not premise BaseIterator.
|
|
|
|
2008-09-19 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathComparer.cs : no need to limit to BaseIterator.
|
|
|
|
2008-09-19 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : oops, wrong #if ranges.
|
|
|
|
2008-09-19 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : made some 2.0-only methods available in 1.x
|
|
so that we don't have to hesitate to optimize xpath using them.
|
|
|
|
2008-06-03 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : help diagnose variable resolution failure.
|
|
|
|
2008-04-02 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : fixed InnerXml to not give up with root node.
|
|
Indent InnerXml. Fixed bug #376191.
|
|
|
|
2008-02-27 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : in some MoveTo*() methods, it should allow any
|
|
destination node when "type" is XPathNodeType.All. Based on the
|
|
patch by Sanghyeon Seo, fixed bug #365112.
|
|
|
|
2008-02-12 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* DefaultContext.cs : now number formatting for "R" works fine, so
|
|
just use it (and remove conditional compilation for TARGET_JVM).
|
|
|
|
2008-01-10 Konstantin Triger <kostat@mainsoft.com>
|
|
|
|
* Iterator.cs: prevent endless recursion in AncestorIterator
|
|
while collecting results.
|
|
|
|
2008-01-12 Sebastien Pouliot <sebastien@ximian.com>
|
|
|
|
* DefaultContext.cs: Fix direct comparison with NaN. Found by
|
|
Gendarme.
|
|
|
|
2007-12-17 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : oops, extra removal that causes perf. loss.
|
|
|
|
2007-12-17 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : be more strict to detect the end of
|
|
PredicateIterator. Fixed bug #349111.
|
|
|
|
2007-12-17 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : In any comparison expr, treat RTF as equivalent to
|
|
string type (as specified in XSLT 1.0 section 11.1: "An operation
|
|
is permitted on a result tree fragment only if that operation would
|
|
be permitted on a string." ...). Fixed bug #349035.
|
|
|
|
2007-11-29 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : implemented ValueAs().
|
|
|
|
2007-01-30 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : typo. Close #80669
|
|
|
|
2007-01-05 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : text() should match whitespace and significant
|
|
whitespace nodes.
|
|
|
|
2006-11-10 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs :
|
|
- ReadSubtree() should reject everything but Element or Root.
|
|
- InnerXml and OuterXml should not use ReadSubtree() when it is
|
|
not positioned on an Element or the Root. Thus, implement them
|
|
in their own ways. Fixed bug #79875.
|
|
|
|
2006-11-10 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : InnerXml should allow Text-only content. Fixed
|
|
bug #79874, when tied to XPathNavigatorReader fix.
|
|
|
|
2006-04-10 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : get_OuterXml() returns indented output, without
|
|
XML declaration.
|
|
|
|
2006-03-15 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : extracted XPathSortElement, XPathSorters
|
|
and XPathSorter from CompiledExpression, and split
|
|
XPathSorters.Sort() into some methods. Those changes are to make
|
|
them reusable in XslSortEvaluator.
|
|
|
|
2006-02-26 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : seems like MS XPathNodeIterator.MoveNext() itself does
|
|
not handle XsltContext.PreserveWhitespace() unlike ours. It results
|
|
in not a small performance improvement. (just removed it since it
|
|
didn't cause any errors in XSLT standalone tests.)
|
|
|
|
2006-02-21 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : removed extra field from AxisIterator.
|
|
|
|
2006-02-14 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : tiny message fix (thanks to alp).
|
|
|
|
2006-01-25 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : fixed IsNode signature found by updated
|
|
corcompare.
|
|
|
|
2006-01-11 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : Nowadays removal of cloning of the argument list
|
|
in ListIterator is safe. Thanks to Joshua Tauberer for the hint.
|
|
|
|
2006-01-11 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : (DescendantOrSelfIterator/DescendantIterator) the
|
|
error message is for blaming custom XPathNavigator
|
|
implementation, not us ;-) (see also #77194)
|
|
|
|
2006-01-06 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : use WriteNode(XPathNavigator, bool)
|
|
rather than WriteNode(XmlWriter, bool) in WriteSubtree().
|
|
|
|
2005-12-14 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : Added MonoTODO to CreateAttributes(). Removed
|
|
MonoTODO from ReadSubtree().
|
|
|
|
2005-12-14 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : UnderlyingObject returns null by default.
|
|
|
|
2005-12-13 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : Reimplemented MoveToFollowing() to avoid
|
|
inefficient MoveToDescendant() and to match .NET 2.0 behavior.
|
|
|
|
2005-12-13 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : ReplaceSelf() should allow document fragment.
|
|
Moved implementation to XPathEditableDocument.
|
|
|
|
2005-12-13 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : PrependChild() should use AppendChild() when
|
|
there is no child.
|
|
|
|
2005-12-13 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : InsertAfter() should raise an error before
|
|
MoveToNext() when current node is either attribute or namespace.
|
|
|
|
2005-12-13 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : InsertAfter() should append children after it
|
|
once moved to parent. This method shoulr raise an error when it is
|
|
placed on Root.
|
|
|
|
2005-12-13 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : (CreateFragmentReader) return XmlReader that
|
|
considers current namespace contexts.
|
|
|
|
2005-12-12 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : removed some MonoTODOs.
|
|
|
|
2005-12-08 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathDocument.cs : garbage cleanup.
|
|
|
|
2005-11-23 Vladimir Krasnov <vladimirk@mainsoft.com>
|
|
|
|
* Iterator.cs: fixed UnionIterator.SetCurrent method, the
|
|
navigators may be from different xml files.
|
|
|
|
2005-11-23 Vladimir Krasnov <vladimirk@mainsoft.com>
|
|
|
|
* Iterator.cs: fixed SimpleSlashIterator.MoveNextCore method, the
|
|
navigators may be from different xml files.
|
|
|
|
2005-11-10 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs, XPathNodeIterator.cs :
|
|
[DebuggerDisplay] are not worthy of existing.
|
|
|
|
2005-11-07 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs, XPathNodeIterator.cs : DebuggerDisplayAttribute
|
|
values are fixed. However, they totally do not make sense since
|
|
there is no DebuggerDisplayProxy type in our impl.
|
|
|
|
2005-11-07 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathException.cs : Message property is back in 2.0 RTM.
|
|
|
|
2005-11-07 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNodeIterator.cs : added [DebuggerDisplay]. pretty useless tho.
|
|
* XPathNavigator.cs : [DebuggerDisplay] as well.
|
|
SelectSingleNode() and AppendChildElement() are now virtual.
|
|
|
|
2005-10-23 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : now 2.0 MoveToFirst() invokes internal
|
|
MoveToFirstImpl() and it is from what XmlDocumentNavigator did.
|
|
This fixes XPathEditableDocument.MoveToFirst().
|
|
|
|
2004-10-15 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : (DeleteRange, ReplaceRange) so they are not
|
|
likely to be implemented, thus MonoTODO.
|
|
|
|
2005-10-08 Gert Driesen <drieseng@users.sourceforge.net>
|
|
|
|
* XPathNavigator.cs: Removed DebuggerDisplay attribute.
|
|
* XPathNodeIterator.cs: Removed DebuggerDisplay attribute.
|
|
|
|
2005-10-08 Gert Driesen <drieseng@users.sourceforge.net>
|
|
|
|
* XPathNavigator.cs: [NET_2_0] Added DebuggerDisplay attribute,
|
|
added ReplaceRange and DeleteRange methods.
|
|
* XPathNodeIterator.cs: [NET_2_0] Added DebuggerDisplay attribute.
|
|
|
|
2004-09-22 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : Now that managed collation is default, we don't need
|
|
reversive case-order anymore.
|
|
|
|
2004-09-21 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : added NavigatorComparer.
|
|
* XPathComparer.cs : XPathNavigatorComparer implements
|
|
IEqualityComparer under NET_2_0 profile.
|
|
|
|
2005-08-31 Sebastien Pouliot <sebastien@ximian.com>
|
|
|
|
* XPathException.cs: Added a Demand for SerializationFormatter on
|
|
GetObjectData method.
|
|
|
|
2005-08-03 Gert Driesen <drieseng@users.sourceforge.net>
|
|
|
|
* XPathNavigator.cs: GetNamespacesInScope returns generic IDictionary
|
|
in .NET 2.0 Beta 2.
|
|
|
|
2004-07-23 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : don't expect namespace resolver; namespace could be
|
|
supplied in QName without nsresolver need (i.e. SelectChildren()).
|
|
Fixed bug #75609.
|
|
|
|
2005-06-09 Andrew Skiba <andrews@mainsoft.com>
|
|
|
|
* XmlDefaultContext.cs : add TARGET_JVM for roundtrip bug
|
|
|
|
2004-06-07 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : set TARGET_JVM where collation matters.
|
|
|
|
2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathAtomicValue.cs :
|
|
it is now XmlAtomicValue and in sys.xml.schema.
|
|
* XPathNavigator.cs, Expression.cs :
|
|
removed atomizedName related 2.0 members (deprecated).
|
|
|
|
2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathExpression.cs : added static Compile().
|
|
* XPathNavigator.cs :
|
|
Use XPathExpression.Compile() for now.
|
|
Updated tree modification API to 2.0 beta2.
|
|
* XPathItem.cs, XPathNavigator.cs, XPathAtomicValue.cs :
|
|
updated to 2.0 beta2 API.
|
|
* XPathResultType.cs : removed [Serializable].
|
|
* XmlNodeChangeType.cs : removed obsolete file.
|
|
|
|
2004-03-25 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : 2.0 build fix
|
|
|
|
2004-03-25 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : In ExprSLASH2, replace A//B with A/descendant::B if
|
|
B is child axis test (thus peer&subtree optimization became possible)
|
|
Fixed warning (incorrect variable let).
|
|
|
|
2004-03-25 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : reduced some Clone().
|
|
Simplified ComparePosition().
|
|
* Iterator.cs : some iterators are not actually reverse axis.
|
|
|
|
2004-03-22 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : EvaluateBoolean() for RTF should check return true
|
|
for empty elements. Fixed static analysis for RTF.
|
|
|
|
2004-03-22 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Parser.jay, Tokenizer.cs : Now they are used as common code base for
|
|
XPath parser and XSLT pattern parser. Makefile now creates two
|
|
set of sources of them. (This change takes effect on the next change).
|
|
|
|
2004-03-16 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Parser.jay : rewrote step part to be reusable for upcoming XSLT
|
|
pattern parser.
|
|
|
|
2004-03-16 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : reduced extra clone.
|
|
|
|
2004-03-15 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* DefaultContext.cs,
|
|
Expression.cs,
|
|
Iterator.cs : Now RequireSorting is not required in BaseIterator
|
|
(it is now fully in Expression).
|
|
Removed the last ListIterator .ctor() argument.
|
|
|
|
2004-03-15 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : In ComparePosition(), make use of IsDescendant().
|
|
|
|
2004-03-14 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs,
|
|
DefaultContext.cs : Basic constant folding optimization (not so
|
|
effective right now). Unified number-to-string conversion code into
|
|
XPathFunctions.ToString(double) to avoid roundtrip format right now.
|
|
* Iterator.cs : removed unused code.
|
|
|
|
2004-03-11 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : more clone reduction.
|
|
|
|
2004-03-11 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs, DefaultContext.cs : more Peer overrides.
|
|
|
|
2004-03-11 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs,
|
|
DefaultContext.cs : Removed unused NeedAbsoluteMatching.
|
|
Added Peer and Subtree (for "peer & subtree optimization. See:
|
|
http://idealliance.org/papers/dx_xmle04/papers/02-03-02/02-03-02.html
|
|
Fixed some ToString() that caused NullReferenceException.
|
|
|
|
* Iterator.cs : Predicate does not affect on RequireSorting.
|
|
Added SimpleSlashIterator for peer & subtree optimization.
|
|
|
|
Added PreserveWhitespace() consideration in BaseIterator.MoveNext().
|
|
|
|
2004-03-09 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs,
|
|
Iterator.cs, :
|
|
SlashIterator is now constructed with requireSorting parameter
|
|
that thus just use RequireSorting from both left/right Expressions,
|
|
not iterators.
|
|
When attribute axis is on the left expression, the result needs to
|
|
be sorted.
|
|
|
|
2004-03-09 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : Now for most of iterator types, Current property always
|
|
returns the same instance. It results in huge memory reduction.
|
|
|
|
2004-03-04 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : (SlashIterator.MoveNext()) For SortedList.Add(), the
|
|
key should be iterator itself. Key by list count never makes sense.
|
|
|
|
2004-03-04 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : Significant whitespace nodes must be returned in
|
|
text() NodeTypeTest.
|
|
|
|
2004-02-23 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : xsl:sort case-order was not handled properly.
|
|
|
|
2004-02-23 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs :
|
|
In FollowingIterator, attribute and namespace nodes should be
|
|
considered to have following nodes. See XPath 1.0 section 5 (esp.
|
|
the description on "document order").
|
|
On fixing @*/following::*, attribute nodes are regarded as to be
|
|
RequireSorting = true (which might result in duplicate).
|
|
|
|
2004-02-18 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : string() function expects "Infinity" and "-Infinity"
|
|
instead of "INF" for conversion from number. XmlConvert is for XSD,
|
|
not for XSLT.
|
|
|
|
2004-02-09 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : RelationalExpr was comparing number and node in
|
|
reverse order. Patch by Kazuki Oikawa. Fixed bug #72343.
|
|
RelationalExpr should also handle result tree fragment as node-set
|
|
as well as EqualityExpr. This fixes RTF case wrt #72343.
|
|
|
|
2004-02-08 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : tiny code format fix by Andrew Skiba.
|
|
|
|
2004-12-26 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : Added CheckValidity() and ValueType.
|
|
For SetTypedValue(), throw NotSupportedException instead of
|
|
NotImplementedException.
|
|
|
|
2004-12-16 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs :added MoveToFollowing(), ReplaceSelf() and
|
|
all the missing attributes.
|
|
|
|
2004-12-04 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathDocument.cs : switch to DTMXPathNavigator2 which fully
|
|
eliminated string fields from struct.
|
|
(When we switch from struct to class, revert this change to use
|
|
DTMXPathNavigator, since class-based DTMXPathNavigator2 is rather
|
|
wasting processing speed.)
|
|
|
|
2004-12-02 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : when PredicateIterator has a numeric predicate, it
|
|
will never be true twice. So just break up the iteration on true.
|
|
* XPathNavigator.cs : implemented LookupPrefix().
|
|
* Expression.cs : ExprParens.Optimize() could just return the content
|
|
expression.
|
|
|
|
2004-12-01 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* IXPathChangeNavigable.cs,
|
|
XmlChangeFilters.cs,
|
|
XPathDocumentNodeChangedAction.cs : removed old files.
|
|
|
|
2004-12-01 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : with related to the previous patch, many comments
|
|
got making no sense. Thanks to Harinath.
|
|
|
|
2004-12-01 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : actually I mean this patch.
|
|
|
|
2004-12-01 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : Create _current clone only when required. So just set
|
|
null when MoveNextCore() succeeded (except for some cases that
|
|
_current is _nav, such as SelfIterator).
|
|
|
|
2004-11-30 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : SlashIterator.RequireSorting is always false. Whether
|
|
it has to collect nodes in prior or not and whether it might return
|
|
nodes in inconsistent order is different matter.
|
|
(It still needs to store nodes when either of branches requires
|
|
sorting, because they might return the same node later.)
|
|
|
|
2004-11-30 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : reduced some extraneous ComparePosition() that could
|
|
be written as IsSamePosition(). ParentIterator doesn't have to be
|
|
RequireSorting.
|
|
|
|
2004-11-30 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : reimplemented AncestorIterator and
|
|
AncestorOrSelfIterator just to collect parents and not to move to
|
|
siblings. In some cases like thousands of siblings, it used to be
|
|
so slow, while we usually don't have so deep ancestors.
|
|
|
|
2004-11-26 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : warning removal. Added Optimize() which is not
|
|
implemented at all.
|
|
* Tokenizer.cs : warning elimination
|
|
|
|
2004-11-24 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathEditableNavigator.cs, XPathChangeNavigator.cs,
|
|
IXPathEditable.cs : more removal of oldies.
|
|
|
|
2004-11-24 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* NodeChangedEventArgs.cs, NodeChangedEventHandler.cs : removed oldies.
|
|
|
|
2004-11-08 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Tokenizer.cs : just use raw string instead of char[].
|
|
* XPathNavigator.cs : reuse NameTable when creating XmlTextReader.
|
|
|
|
2004-11-07 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs :
|
|
- Made copy constructor certainly different from other constructors.
|
|
- Position is never computed in each derived type. All MoveNext() are
|
|
now MoveNextCore().
|
|
- Most of the protected members could just be private.
|
|
|
|
2004-11-05 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs, XPathNavigator.cs : hold raw expression field for
|
|
get_Expression. It is preparation for expression optimization.
|
|
|
|
2004-11-05 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : SimpleIterator._current could be cloned only when
|
|
it is required.
|
|
|
|
2004-11-05 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : Some removal of Clone() were harmless.
|
|
|
|
2004-10-22 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathDocument.cs : now all the new stuff that used to be in 2.0 are
|
|
reverted.
|
|
* XPathEditableNavigator.cs : It will be removed. Right now modified
|
|
a bit to pass build.
|
|
* XPathNavigator.cs : Added members that are merged from
|
|
XPathEditableNavigator. Updated members name.
|
|
|
|
2004-10-14 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs :
|
|
- Added WrapperIterator to return BaseIterator in such case that
|
|
variable reference is resolved to XPathNodeIterator. This fixes
|
|
bug #68267.
|
|
- Path ".." is reverse axis (actually no effect).
|
|
- Fixed DescendantIterator.Clone() that missed "_finished" field.
|
|
* Expression.cs :
|
|
In ExprVariable.Evaluate(), use WrapperIterator() for custom
|
|
XPathNodeIterator.
|
|
|
|
2004-10-09 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathAtomicValue.cs : Init(string, XmlSchemaType) is private.
|
|
|
|
2004-10-05 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathAtomicValue.cs : missing Init() definition for float and string;
|
|
latter one resulted in infinite loop in Init(object,XmlSchemaType).
|
|
|
|
2004-10-04 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : TypedValue could be implemented.
|
|
* XPathEditableNavigator.cs : removed some MonoTODO since now there
|
|
are implementations.
|
|
|
|
2004-09-13 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathAtomicValue.cs : All .ctor() are separeted from Init().
|
|
In .ctor(object, XmlSchemaType):
|
|
- For lists that contains just one item, Init() recursively.
|
|
- For XPathAtomicValue, Init() recursively for its content fields.
|
|
For Value and TypedValue, consider typecode from XmlSchemaType.
|
|
|
|
2004-09-06 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathEditableNavigator.cs :
|
|
AppendChild(xmlReader) ignored nodes after than first one, and
|
|
resulted in infinite loop.
|
|
Added get_OuterXml overrides. set_OuterXml should not move to
|
|
parent before deleting current.
|
|
|
|
2004-08-25 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathAtomicValue.cs : Value was not returning expected value when
|
|
it is created as new XPathAtomicValue (object, XmlSchemaType).
|
|
Compute stringValue and reuse.
|
|
* XPathNavigator.cs : Temporarily stubbed as to ignore SchemaInfo
|
|
(for checking XQuery implementation).
|
|
|
|
2004-08-25 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathAtomicValue.cs : Handle .ctor() with object parameter more
|
|
precisely (still not enough, for list argument).
|
|
Removed commended blocks.
|
|
|
|
2004-08-24 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathAtomicValue.cs : DateTime should be convertible to string.
|
|
Use schemaType's TypeCode for .ctor() that takes object.
|
|
* XPathNavigator.cs : copied get_InnerXml from XPathEditableNavigator.
|
|
* XPathEditableNavigator.cs : set_InnerXml should be different (new)
|
|
property from get_InnerXml. Removed get_InnerXml and get_OuterXml
|
|
overrides.
|
|
|
|
2004-08-23 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathAtomicValue.cs, XPathNavigator.cs : Eliminate MS.Internal.Xml.*.
|
|
|
|
2004-08-03 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathEditableNavigator.cs : implemented some editor support methods.
|
|
|
|
2004-08-02 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathDocument.cs :
|
|
- For .NET 2.0, added a switch to support new XPathDocument2.
|
|
If switch is off, then it uses DTM.
|
|
- Implemented remaining 2.0 bits (except for Obsolete ones).
|
|
|
|
To use them in XPathDocument, set environment MONO_XPATH_DOCUMENT_2=yes
|
|
(It is still too unstable to pass all nunit tests and standalone XSLT
|
|
tests).
|
|
|
|
2004-07-29 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : Implemented ReadSubtree().
|
|
|
|
2004-07-28 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathDocument.cs : for .ctor() and .ctor(XmlNameTable), now it
|
|
creates Mono.Xml.XPath.XPathEditableDocument and thus supports
|
|
IXPathEditable.CreateEditor().
|
|
|
|
2004-07-28 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathEditableNavigator.cs : Implemented InsertAfter() and
|
|
PrependChild(); they are virtual, not abstract.
|
|
* XPathNavigator.cs :
|
|
Implemented many 2.0 virtual properties and methods that were
|
|
abstract in 1.x.
|
|
Implemented some Select() methods that uses IXmlNamespaceResolver.
|
|
Implemented most of ValueAsXxx() using XQueryConvert.
|
|
IsNode is always true. Implemented OuterXml and WriteSubtree() (but
|
|
actually they don't work because it depends on ReadSubtree()).
|
|
|
|
2004-07-26 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathDocument.cs : added missing && not-likely-to-be-removed members.
|
|
* XPathEditableNavigator.cs : added BuildSubTree().
|
|
* XPathException.cs : added missing methods. Hide Message in NET_2_0.
|
|
|
|
2004-07-23 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNodeIterator.cs : implemented 2.0 GetEnumerator().
|
|
|
|
2004-07-21 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathExpression.cs, Expression.cs :
|
|
Added SetContext(IXmlNamespaceResolver).
|
|
* NodeChangedEventArgs.cs : Added missing [MonoTODO].
|
|
* XPathAtomicValue.cs : Halfly implemented.
|
|
* XPathDocument.cs : Added 2.0 members.
|
|
* XPathDocumentNodeChangedAction.cs : updated member names.
|
|
* XPathEditableNavigator.cs : Added missing 2.0 members and MonoTODO.
|
|
* XPathNavigator.cs : Added missing 2.0 members.
|
|
Fixed some members as virtual->override.
|
|
|
|
2004-07-13 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XmlNodeChageType.cs, XmlChangeFilters.cs : fixed enum values.
|
|
* XPathResultType.cs : marked [MonoFIX] on .Navigator.
|
|
|
|
2004-07-11 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs, Iterator.cs, XPathNavigator.cs :
|
|
Use IXmlNamespaceResolver for net 2.0. Removed unused code.
|
|
* XPathEditableNavigator.cs : fixed namespace.
|
|
* XPathNavigator.cs :
|
|
Fixed inheritance. Added missing MonoTODO.
|
|
Removed old .net 1.2 code.
|
|
|
|
2004-06-18 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* DefaultContext.cs : Globalization.
|
|
* Iterator.cs : In SlashIterator.MoveNext() position might keep 0
|
|
in case of empty list. Thus extraneous iteration might happened.
|
|
Removed unused (and clone unsafe) EnumeratorIterator.
|
|
|
|
2004-06-06 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathDocument.s : The previous patch is still incomplete to close.
|
|
|
|
2004-06-05 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathDocument.cs : close self-opened XmlTextReader in .ctor().
|
|
|
|
2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : LookupNamespace() only allows already-atomized names.
|
|
* XPathEditableNavigator.cs : removed incorrect set_OuterXml() and
|
|
set_InnerXml().
|
|
|
|
2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* DefaultContext.cs : Add XPathNavigator input support for ToBoolean()
|
|
and ToNavigator().
|
|
* Expression.cs : In Equality comparison, evaluate XPathNavigator in
|
|
the same as well as NodeSet. This fixes bug #59134.
|
|
|
|
2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathAtomicValue.cs : missed NET_2_0.
|
|
|
|
2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* IXPathChangeNavigable.cs,
|
|
IXPathEditable.cs,
|
|
NodeChangedEventArgs.cs,
|
|
NodeChangedEventHandler.cs,
|
|
XPathAtomicValue.cs,
|
|
XPathChangeNavigator.cs,
|
|
XPathDocumentNodeChangedAction.cs,
|
|
XPathEditableNavigator.cs,
|
|
XPathItem.cs,
|
|
XmlChangeFilters.cs,
|
|
XmlNodeChangeType.cs : added NET_2_0 classes.
|
|
* XPathDocument.cs,
|
|
XPathNavigator.cs : updated NET_2_0 members.
|
|
|
|
2004-05-20 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : We should not catch all kind of exception. Just
|
|
throwing any kind of exception would be preferable.
|
|
Added support for XPathNavigator values.
|
|
|
|
2004-05-13 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* DefaultContext.cs : Removed MonoTODO. done.
|
|
* Expression.cs : handle XPathResultType.Navigator in some places and
|
|
removed MonoTODO. Mark MonoTODO with explicit comments (though they
|
|
are mostly pointing out possibilities of optimization).
|
|
Removed extra check that depended on the old bugs.
|
|
* XPathResultType.cs : Fixed .Navigator that had the same value as
|
|
.String.
|
|
|
|
2004-05-12 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Parser.jay : made class internal.
|
|
|
|
2004-03-16 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs, Iterator.cs : Considered detached nodes, the
|
|
result of MoveToParent() should be checked.
|
|
|
|
2004-02-17 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : Only child and attribute axes are allowed for
|
|
Matches().
|
|
* Expression.cs : Added IsPositional property.
|
|
* DefaultContext.cs : Added some overrides.
|
|
|
|
2004-02-16 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* XPathNavigator.cs : no, its still not ok. comment out now.
|
|
|
|
2004-02-16 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Expression.cs : Added EvaluatedNodeType and NeedAbsoluteMatching
|
|
to reduce extraneous Matches() trial.
|
|
* Iterator.cs : Removed unused MergedIterator.
|
|
* XPathNavigator.cs : Optimized Matches() not to evaluate ancestors
|
|
unnecessarily. (Test with NeedAbsoluteMatching).
|
|
|
|
2004-02-10 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* Iterator.cs : Added overriden Count properties for some iterators
|
|
(this fixes the half of #50678).
|
|
Added ListIterator class (which can reduce GetEnumerator()).
|
|
In some places we can omit clone for Current property, so added
|
|
some check logic (It has no effect as yet).
|
|
* Expression.cs, DefaultContext.cs :
|
|
use ListIterator instead of EnumeratorIterator.
|
|
|
|
2004-02-08 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* DefaultContext.cs, Expression.cs, Iterator.cs :
|
|
tiny foreach elimination.
|
|
|
|
2004-02-05 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* DefaultContext.cs : trivial processing order fix.
|
|
|
|
2004-01-27 Atsushi Enomoto <atsushi@ximian.com>
|
|
|
|
* DefaultContext.cs : Avoid exception if possible.
|
|
* Iterator.cs : Fixed PrecedingSiblingIterator.MoveNext(). When the
|
|
nav was positioned at the first, it incorrectly points itself.
|
|
Don't add names to name table while it is useless and expensive.
|
|
|
|
2004-01-08 Nick Drochak <ndrochak@ieee.org>
|
|
|
|
* Iterator.cs: Removed unused variable.
|
|
|
|
2003-12-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Parser.jay : now it supresses error output from jay.
|
|
* DefaultContext.cs : (XPathFunctionSubstring) exclude -Infinity.
|
|
* Tokenizer.cs : better error message.
|
|
* XPathDocument.cs : Use XmlValidatingReader to support id() function.
|
|
(just found MS.NET actually supports it)
|
|
|
|
2003-12-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Iterator.cs : On its iteration, moving Current must not affect to
|
|
MoveNext(). To assure this, Current must be a clone of navigator.
|
|
Removed unused code.
|
|
|
|
2003-12-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Tokenizer.cs : Removed some TODOs. (trivial ;-)
|
|
* Iterator.cs : ParensIterator can inherit from BaseIterator.
|
|
SlashIterator copy .ctor() always failed to clone. This fixes Count.
|
|
|
|
2003-12-03 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Expression.cs : XPathSorters.Compare() should compare document
|
|
position. See last sentence of XSLT 1.0 secion 10.
|
|
|
|
2003-12-03 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* DefaultContext.cs : Overrode all functions' ToString().
|
|
XPathFunctions.ToNumber() trims whitespaces at both side.
|
|
Fixed NullReferenceException in normalize-space().
|
|
* Iterator.cs : Fixed AncestorOrSelfIterator.MoveNext() didn't handle
|
|
attribute or namespace node correctly.
|
|
SlashIterator.Clone() didn't clone "next node iterator" correctly.
|
|
EnumeratorIterator.ctor() should raise an error (not at Clone())
|
|
when the target IEnumerator is not ICloneable.
|
|
|
|
2003-11-28 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Expression.cs : namespace axis now traversed in reverse order, so it
|
|
requires sorting.
|
|
* Iterator.cs : UnionIterator.Clone() was incomplete.
|
|
NamespaceItarator() should be reverse order (special handling
|
|
because of XPathNavigator specification).
|
|
|
|
2003-11-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Iterator.cs : PrecedingIterator.MoveNext() now breaks up at Root.
|
|
* XPathNavigator.cs : ComparePosition() didn't handle attributes
|
|
correctly.
|
|
|
|
2003-11-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Parser.jay, Expression.cs, Iterator.cs :
|
|
Added ExprParens and ParensIterator classes which is used to handle
|
|
precedence of parenthesized expressions.
|
|
(e.g. consider "(preceding::*)[3]" and "preceding::[3]" )
|
|
|
|
* Expression.cs, Iterator.cs :
|
|
Added RequireSorting property for each Expr and BaseIterator classes.
|
|
SlashIterator.MoveNext() now considers correct sorting. But
|
|
considering performance, it separates two logics, sorted and sortless
|
|
depending on RequireSorting of left iterator and right expression.
|
|
|
|
* Iterator.cs :
|
|
SimpleIterator.ctor() should consider when nav is null.
|
|
FollowingIterator.MoveNext() and PrecedingIterator.MoveNext() should
|
|
not return any nodes.
|
|
AncestorIterator and AncestorOrSelfIterator copy ctr() should clone
|
|
positions.
|
|
AncestorIterator.MoveNext() should skip Root if context node is
|
|
Root itself.
|
|
FollowingIterator.MoveNext() should not handle children of context
|
|
itself.
|
|
PrecedingIterator.MoveNext() should skip its ancestors.
|
|
AxisIterator.ReverseAxis should be dependent on its containing iter.
|
|
UnionIterator.MoveNext() should consider comparison of nodes in
|
|
different document. The behavior is implementation dependent.
|
|
(see XSLT spec 12.1)
|
|
|
|
2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Added XPathComparer.cs
|
|
* DefaultContext.cs : Fixed XPathFunctionId.Evaluate() to iterate base
|
|
iterator correctly, and sort results.
|
|
|
|
2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* DefaultContext.cs : Imcomplete fix ;-)
|
|
|
|
2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* DefaultContext.cs : XPathFunctions.ToNumber() should catch overflow.
|
|
XPathFunctionId.cs : Exposed Id expression.
|
|
* Expression.cs : Added ExprLiteral.Value, and class ExprParens (it
|
|
will be used to solve evaluation precedence problem).
|
|
|
|
2003-11-09 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Iterator.cs : Fixed SlashIterator that might return nodes 1)in
|
|
inconsistent order, and 2)may return duplicate result nodes.
|
|
|
|
2003-11-06 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* Iterator.cs: (AxisIterator.ComparablePosition): Remove. Let
|
|
it inherit from the base class. This made b[2] evaluated on
|
|
<a /><b /><c /><a /><b /><c /> return the first b node because
|
|
in the ChildIterator it was the second node and seemed to satsify
|
|
the predicate.
|
|
|
|
2003-11-04 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Iterator.cs : Added bool ReverseAxis property to identify whether
|
|
the iterator is in reverse order or not. Added ComparablePosition
|
|
for correct position comparison for PredicateIterator and reverse-
|
|
order-axes. Modified AncestorIterator, AncestorOrSelfIterator,
|
|
PrecedingIterator and PrecedingSiblingIterator to make MoveNext()
|
|
return their nodes in document order. This fixes bugzilla #39079.
|
|
|
|
2003-10-15 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Iterator.cs : DescendantIterator and FollowingIterator also should
|
|
not MoveNext() after they reached to the end.
|
|
|
|
2003-10-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Iterator.cs : Fixed UnionIterator who ignores document order.
|
|
Fixed SlashIterator whose MoveNext() should finish at its end.
|
|
|
|
2003-09-27 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* Iterator.cs, Expression.cs, XPathNavigator.cs: In AxisIterator
|
|
use NameTable so we dont call strcmp.
|
|
|
|
2003-09-27 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* DefaultContext.cs (translate): translate ("abc", "c", "") = "ab"
|
|
not "abc".
|
|
* Iterator.cs, Expression.cs: All axes are
|
|
SimpleIterators. SimpleIterators are gaurenteed to give the same
|
|
XPathNavigator in Current. Make AxisIterator take a
|
|
SimpleIterator, not any old BaseIterator. Will allow us to make
|
|
NameTable optimizations and avoid quite a few strcmp's.
|
|
|
|
2003-09-24 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* Expression.cs: make // work right, must use another slash itr.
|
|
|
|
2003-09-21 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* Expression.cs: cant use $$ before assigned.
|
|
|
|
2003-09-21 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* Expression.cs, Parser.jay, XPathNavigator.cs: api beautification.
|
|
|
|
2003-09-20 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* Expression.cs: num != double.NaN does not work.
|
|
|
|
2003-09-19 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* Expression.cs: in NodeTypeTest dont throw an exception if it is
|
|
an unknown node type (allows for better Pattern debugging).
|
|
|
|
2003-09-17 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* DefaultContext.cs: implement sum () and translate ().
|
|
|
|
2003-09-13 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* XPathNavigator.cs: Make methods where you pass in the context,
|
|
so that we dont have to clone expressions so much.
|
|
|
|
2003-09-06 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* DefaultContext.cs, Expresssion.cs, Parser.jay: Rewrite so that
|
|
system functions are actually expressions. Will allow for some
|
|
nice optimizations.
|
|
|
|
2003-08-25 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* XPathNavigator.cs: "Smart" behavior in Matches. Nice 8x speed
|
|
improvement in the method (5ms/call -> .7 ms / call) measured by
|
|
monodoc's rendering of N:System.
|
|
* Expression.cs: Utility methods to support above.
|
|
|
|
2003-08-13 Piers Haken <piersh@friskit.com>
|
|
|
|
* Iterator.cs:
|
|
fix MergedIterator.Clone(), now clones other's iterators
|
|
fix DescendantIterator.Clone(), now copies depth
|
|
make iterator cloning constructors more type-specific
|
|
|
|
2003-08-01 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs: added NodeNamespaceTest
|
|
* XPathNavigator.cs: implement Select* with namespaces
|
|
|
|
2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* Iterator.cs: Allow creation of an EnumeratorIterator with an
|
|
XmlNamespaceManager.
|
|
|
|
2003-07-31 Piers Haken <piersh@friskit.com>
|
|
|
|
* Parser.jay:
|
|
Nested predicates (uses ExprFilter instead)
|
|
more type safety
|
|
make grammar look more like w3c spec
|
|
* Expression.cs:
|
|
remove ExprStep, ExprPredicates
|
|
NodeTest is now a NodeSet
|
|
more type-safety
|
|
* Iterator.cs:
|
|
PredicateIterator now only takes a single predicate expression
|
|
more type-safety
|
|
* XPathNavigator.cs:
|
|
simplified SelectTest
|
|
* XPathException.cs:
|
|
fixed indenting
|
|
|
|
2003-07-30 Duncan Mak <duncan@ximian.com>
|
|
|
|
* XPathException.cs
|
|
(GetObjectData):
|
|
(Message): Added.
|
|
|
|
2003-07-29 Piers Haken <piersh@friskit.com>
|
|
|
|
* DefaultContext.cs: 'local-name' returns String, not NodeSet!
|
|
|
|
2003-07-29 Piers Haken <piersh@friskit.com>
|
|
|
|
* XPathNavigator.cs:
|
|
* Expression.cs:
|
|
add typesafe Evaluate* methods
|
|
|
|
2003-07-29 Piers Haken <piersh@friskit.com>
|
|
|
|
* DefaultContext.cs: fix 'substring-after'
|
|
|
|
2003-07-29 Piers Haken <piersh@friskit.com>
|
|
|
|
* Iterator.cs: fix PredicateIterator.CurrentPosition bug (it wasn't incrementing)
|
|
|
|
2003-07-29 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* Iterator.cs: dont throw exceptions on tostring ()
|
|
|
|
2003-07-28 Piers Haken <piersh@friskit.com>
|
|
|
|
* DefaultContext.cs: better handling of null argument lists
|
|
* XPathNavigator.cs: implement ComparePosition
|
|
|
|
2003-07-28 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs: boolean operators: handle comparing .Any better
|
|
|
|
2003-07-28 Piers Haken <piersh@friskit.com>
|
|
|
|
* DefaultContext.cs: count() should return a double
|
|
* Expression.cs: better support for handling non-double numbers
|
|
|
|
2003-07-28 Piers Haken <piersh@friskit.com>
|
|
|
|
* DefaultContext.cs: better function param matching
|
|
|
|
2003-07-27 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs:
|
|
* DefaultContext.cs:
|
|
catch FormatExceptions while parsing numbers
|
|
|
|
2003-07-27 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs:
|
|
fix case sorting order
|
|
allow EvaluateNumber to take XPathResultType.Any
|
|
|
|
2003-07-27 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs:
|
|
* Tokenizer.cs:
|
|
don't pass null to XmlQualifiedName constructor
|
|
|
|
2003-07-27 Piers Haken <piersh@friskit.com>
|
|
|
|
* DefaultContext.cs: allow 'concat' to take arbitrary-typed arguments (spec?)
|
|
|
|
2003-07-27 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs: allow EvaluateNodeSet to take XPathResultType.Any
|
|
|
|
2003-07-26 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs: fix function evaluation with ambigous argument types
|
|
* XPathNavigator.cs: fix silly null reference bug
|
|
|
|
2003-07-26 Piers Haken <piersh@friskit.com>
|
|
|
|
* Iterator.cs:
|
|
* DefaultContext.cs:
|
|
ArrayListIterator->EnumeratorIterator
|
|
* Expression.cs: add sorting support
|
|
|
|
2003-07-26 Piers Haken <piersh@friskit.com>
|
|
|
|
* Tokenizer.cs:
|
|
* Parser.jay:
|
|
move QName parsing into tokenizer
|
|
* Expression.cs:
|
|
fix evaluating XPathResultType.Any
|
|
fix ExprDiv.ToString()
|
|
fix NodeTypeTest.ToString() (for namespace axis)
|
|
|
|
2003-07-25 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs: return clone of $var evaluation
|
|
|
|
2003-07-26 Piers Haken <piersh@friskit.com>
|
|
|
|
* Iterator.cs: add setter for NamespaceManager
|
|
* XPathNavigator.cs: propagate NamespaceManager from context on Evaluate
|
|
* Expression.cs: fix func/var exception strings
|
|
|
|
2003-07-25 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs: implement ExprFilter.Evaluate
|
|
|
|
2003-07-25 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs: implement ExprVariable.Evaluate
|
|
|
|
2003-07-24 Ben Maurer <bmaurer@users.sourceforge.net>
|
|
|
|
* DefaultContext.cs: implement lang ()
|
|
|
|
2003-07-24 Piers Haken <piersh@friskit.com>
|
|
|
|
* Parser.jay:
|
|
* Expression.cs:
|
|
allow ExprUNION to take non-nodeset (eg, $var) arguments
|
|
|
|
2003-07-24 Piers Haken <piersh@friskit.com>
|
|
|
|
* Tokenizer.cs: fix variable references
|
|
* Parser.jay:
|
|
* Expression.cs:
|
|
* XPathNavigator.cs:
|
|
use XmlQualifiedName
|
|
|
|
2003-06-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* XPathDocument.cs : removed Driver class and restored authors' name
|
|
(though it is completely rewrote).
|
|
|
|
2003-06-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* XPathDocument.cs : Replaced existing stub class with real
|
|
XPathDocument implementation.
|
|
|
|
2003-04-28 Piers Haken <piersh@friskit.com>
|
|
|
|
* Parser.jay, Tokenizer.cs: more compliant lexical parsing of ambiguous tokens
|
|
|
|
2003-03-07 Piers Haken <piersh@friskit.com>
|
|
|
|
* Tokenizer.cs: allow '.'s in NCNames
|
|
|
|
2003-03-07 Piers Haken <piersh@friskit.com>
|
|
|
|
* Exression.cs:
|
|
* DefaultContext.cs:
|
|
fixed function argument resolution
|
|
|
|
2003-02-09 Piers Haken <piersh@friskit.com>
|
|
|
|
* XPathNavigator.cs:
|
|
* Iterator.cs:
|
|
* Expression.cs: fix namespace handling
|
|
|
|
2003-01-04 Piers Haken <piersh@friskit.com>
|
|
|
|
* Parser.*: Remove extraneous "using" that was stopping the build. Permanently thisi time ;-)
|
|
|
|
2003-02-02 Piers Haken <piersh@friskit.com>
|
|
|
|
* Parser.jay: add token names
|
|
* Tokenizer.cs: fix NCName tokenization
|
|
|
|
2003-01-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
|
|
|
|
* Tokenizer.cs : Fixed ParseIdentifier to allow digits.
|
|
(It should be a temporary fix.)
|
|
|
|
2002-09-22 Nick Drochak <ndrochak@gol.com>
|
|
|
|
* Parser.cs: Remove extraneous "using" that was stopping the build.
|
|
|
|
2002-09-21 Piers Haken <piersh@friskit.com>
|
|
|
|
* XPathException: implementation
|
|
* Expression.cs:
|
|
* Iterator.cs:
|
|
* Parser.jay:
|
|
* Tokenizer.jay:
|
|
* XPathNavigator.jay:
|
|
use XPathException.
|
|
|
|
2002-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
|
|
|
|
* Parser.cs: commented out non-existent namespace (it compiles fine
|
|
with mcs because of a bug that is already on bugzilla).
|
|
|
|
2002-09-12 Piers Haken <piersh@friskit.com>
|
|
|
|
* Tokenizer.cs: fix parsing numbers that start with '.'
|
|
* DefaultContext.cs: use MS-compatible formatting of doubles
|
|
|
|
2002-09-12 Piers Haken <piersh@friskit.com>
|
|
|
|
* Iterator.cs: added NullIterator to handle unspecified contexts
|
|
* XPathNavigator.cs: use NullIterator insted of SelfIterator when context is unspecified.
|
|
* XPathNodeIterator.cs: change default _count to -1 to prevent recalculations for NullIterators
|
|
|
|
2002-09-12 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs, Parser.jay: allow ExprSLASH to take a generic expression as its left argument.
|
|
* Iterator.cs: fix SlashIterator.Clone() when _iterRight is null.
|
|
* DefaultContext.cs: fix id() return type.
|
|
|
|
2002-09-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
|
|
|
|
* DefaultContext.cs: fixed bug #28840.
|
|
* Expression.cs: added FIXME.
|
|
|
|
2002-08-17 Jason Diamond <jason@injektilo.org>
|
|
|
|
* XPathNavigator.cs: Fixed matching on patterns that look like
|
|
absolute XPath expressions.
|
|
|
|
2002-08-17 Jason Diamond <jason@injektilo.org>
|
|
|
|
* XPathNavigator.cs: Added naive (but working) implementation of
|
|
Matches.
|
|
|
|
2002-07-31 Piers Haken <piersh@friskit.com>
|
|
|
|
* XPathDocument.cs: simple, XmlDocument-based implementation
|
|
|
|
2002-07-25 Piers Haken <piersh@friskit.com>
|
|
|
|
* DefaultContext.cs: implement XPathFunctionName 'name()' function.
|
|
|
|
2002-07-17 Piers Haken <piersh@friskit.com>
|
|
|
|
* DefaultContext.cs: implement 'string-length()', 'normalize-space()'
|
|
* Parser.jay: remove redundant production
|
|
* Expression.cs: add switches for debugging under VS.NET
|
|
|
|
2002-07-17 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs: implement nodeset/nodeset comparisons (non-optimal)
|
|
|
|
2002-07-15 Piers Haken <piersh@friskit.com>
|
|
|
|
* Iterator.cs:
|
|
- rename UnionIterator to MergedIterator,
|
|
- create new UnionIterator to implment uniqueness for '|' operator
|
|
- fix position bug in ArrayListIterator.Clone()
|
|
* Expression.cs: use new UnionIterator constructor syntax
|
|
|
|
2002-07-12 Piers Haken <piersh@friskit.com>
|
|
|
|
* Iterator.cs: PredicateIterator: handle numeric predicates
|
|
* Parser.jay: add some debugging support: yyparseDebug
|
|
* Tokenizer.cs: cleanup, include '-' chars in identifier tokens
|
|
|
|
2002-06-29 Piers Haken <piersh@friskit.com>
|
|
|
|
* Expression.cs:
|
|
- remove dead code
|
|
- NodeTest uses XPathResultType instead of internal NodeTestTypes enum
|
|
- remove NodeTestTypes enum
|
|
- remove NodeTestTypeAny (functionality provided by base now)
|
|
- fix ExprStep to handle wildcard QNames
|
|
* Parser.jay:
|
|
- moved to Mono.Xml.XPath namespace
|
|
- use XPathResultType
|
|
- handle wildcard QNames
|
|
|
|
* Tokenizer.cs: moved to Mono.Xml.XPath namespace
|
|
|
|
* XPathNavigator.cs: implement
|
|
- IsDescendant
|
|
- SelectAncestors
|
|
- SelectDescendants
|
|
- SelectChildren
|
|
|
|
* XPathResultType.cs: fix enum values
|
|
|
|
2002-06-24 Jason Diamond <jason@injektilo.org>
|
|
|
|
* XPathScanner.cs: Removed.
|
|
|
|
2002-06-24 Dick Porter <dick@ximian.com>
|
|
|
|
* XmlCaseOrder.cs: Fix namespace
|
|
|
|
2002-06-23 Piers Haken <piersh@friskit.com>
|
|
|
|
* DefaultContext.cs: implemented XPathFUnctionId
|
|
* Iterator.cs: new ArrayListIterator for id() support
|
|
|
|
2002-06-23 Piers Haken <piersh@friskit.com>
|
|
|
|
* XPathNavigator.cs: implement:
|
|
- Compile
|
|
- Evaluate
|
|
- Clone
|
|
- Select
|
|
- ToString
|
|
- some forwarding methods
|
|
|
|
* XPathNodeIterator: implement caching Count
|
|
|
|
* Tokenizer.cs: new XPath tokenizer
|
|
* Parser.jay: new XPath grammar
|
|
* Parser.cs: new precompiled XPath grammar
|
|
* Expression.cs: new XPath expression objects
|
|
* Iterator.cs: new XPath result/context objects
|
|
* DefaultContext.cs: new XPath function binding context
|
|
|
|
2002-05-08 Tim Coleman <tim@timcoleman.com>
|
|
* XPathDocument.cs:
|
|
* XPathException.cs: New stub files added.
|
|
|
|
2002-04-12 Duncan Mak <duncan@ximian.com>
|
|
|
|
* XmlCaseOrder.cs: Moved to here from System.Xml.
|
|
|
|
2002-03-26 Jason Diamond <jason@injektilo.org>
|
|
|
|
* XPathScanner.cs: Now handles name tests with wildacards. Abbreviated
|
|
steps. Both absolution and relative abbreviated location paths.
|
|
|
|
2002-03-25 Jason Diamond <jason@injektilo.org>
|
|
|
|
* XPathScanner.cs: Added new file. This class is supposed to be internal
|
|
but that would make it impossible to test.
|
|
|
|
2002-03-08 Duncan Mak <duncan@ximian.com>
|
|
|
|
* XPathNamespaceScope.cs:
|
|
* XPathNodeType.cs:
|
|
* XPathResultType.cs:
|
|
* XmlDataType.cs:
|
|
* XmlSortOrder.cs: Used EnumCheck and realigned elements to be compatible with MS
|
|
implementation. XPathResultType is interesting as EnumCheck does
|
|
not show the Navigator element, but shows the String element twice.
|
|
|
|
2002-03-08 Jason Diamond <jason@injektilo.org>
|
|
|
|
* XmlDataType.cs, XmlSortOrder.cs, XPathNodeType.cs: Added files.
|
|
|
|
2002-03-06 Jason Diamond <jason@injektilo.org>
|
|
|
|
* ChangeLog: Added to this directory.
|
|
|
|
* XPathExpression.cs, XPathNamespaceScope.cs, XPathNodeIterator.cs,
|
|
XPathResultType.cs: New files.
|
|
|
|
* XPathNavigator.cs: Stubbed out all properties and methods.
|