jez
261f589f47
2008-05-04 14:41:23 +00:00
jez
51e4cad4a0
marked functions as inline as requested, although not entirely sure if it should be necessary :)
2008-04-28 09:13:49 +00:00
jez
84d7d9390a
spelled underlying_impl wrong all these years and never realised, start work on sorting namespace nodes ahead of attribute nodes
2008-04-23 14:41:00 +00:00
jez
c6564e798c
added missing typename
2008-04-23 14:39:11 +00:00
jez
f818f192af
fixed match rewriting when there are leading predicates - http://www.jezuk.co.uk/jez/2008April#3711
2008-04-18 09:11:51 +00:00
jez
a049a72c08
fixed sorting bug when reverse sorting a nodeset which includes the root node
2008-04-17 20:32:32 +00:00
jez
9ea360f3ef
collapsed tagsoup-port into mainline
2008-04-07 15:37:47 +00:00
jez
ebbd739051
initialise lexicalHandler_
2008-02-08 16:01:38 +00:00
jez
71b7af819f
xsl:sort - blow up if we get a lang attribute
2008-01-19 22:45:48 +00:00
jez
7bd88a7bbe
2007-12-25 22:23:25 +00:00
jez
0850f50269
tweaking document order across documents - not for any better reason than making a test case pass
2007-12-25 21:56:28 +00:00
jez
934a03e703
oops - ncnames don't contain colons
2007-12-23 22:52:39 +00:00
jez
95a3a42002
can see it now - uninitialised variable
2007-12-23 09:51:28 +00:00
jez
2e6c372933
hacked up a ncname test, although it's not working at the moment and I'm tired and can't think
2007-12-22 22:21:26 +00:00
jez
be877b8d50
MSVC can't handle static members in nest classes of template classes
2007-12-21 17:02:12 +00:00
jez
235f81718d
Added Expression_scanner and scan (a visitor pattern basically) to allow XPathExpression_impls to be examined. This is used in the match rewriting to search for position() and last() function calls.
...
To ease implementing scan, BinaryExpression and UnaryExpression now inherit XPathExpression_impl. Other classes now derived only from Binary|UnaryExpression rather than from XPathExpression_impl as well.
2007-12-21 15:56:04 +00:00
jez
a8ce93f89b
First proper go at rewriting positional matches.
2007-12-21 14:13:36 +00:00
jez
cbc9cf3797
it's late
2007-12-20 23:24:16 +00:00
jez
f87c01fc53
2007-12-20 16:23:56 +00:00
jez
cdac22542e
added type() to XPath expressions. I need this to allow XSLT match patterns to be rewritten properly - see http://www.jezuk.co.uk/cgi-bin/view/arabica/log?id=3546 - but it will also be useful for compile time checking (should I get sufficiently keen :)
2007-12-18 23:03:16 +00:00
jez
02fe02da03
"If the parser has not read a declaration for the attribute, or if the
...
parser does not report attribute types, then it must return the value
"CDATA" as stated in the XML 1.0 Recommentation (clause 3.3.3,
"Attribute-Value Normalization")."
and:
"Returns: The attribute's type as a string, or an empty string if the
index is out of range."
Problem found reported by Christoph Anderegg, christoph@anderegg-sommer.ch
and corrected with this commit.
2007-12-07 23:28:59 +00:00
jez
e659f3cce4
changed scope of StackFrame for apply templates
2007-11-26 23:17:11 +00:00
jez
213934528b
xsl:stylesheet now allows top-level elements in a foreign namespace
2007-11-23 00:07:08 +00:00
jez
7c491700d3
disallow pcdata ahead of xsl:param
2007-11-22 23:02:08 +00:00
jez
6425632f01
blow up if QName is bad
2007-11-22 22:36:47 +00:00
jez
4ed4928695
check xsl:for-each selects a node-set, I suspect it should be able to diagnose this at compile time but it at least it fails :)
2007-11-22 21:54:51 +00:00
jez
c7c0c3d36c
xsl:processing-instruction shouldn't allow xml as the name
2007-11-22 21:24:17 +00:00
jez
cdebc3d128
moved namespace and function resolver into compilation context. disallowed current() in match patterns
2007-11-22 19:24:18 +00:00
jez
375a2d584f
no longer expose xpath compiler directly during XSLT compilation
2007-11-22 17:50:25 +00:00
jez
69a322f7f2
Alex Ott's patch to kill an initialisation order warning
2007-11-22 16:50:33 +00:00
jez
e2713a0fbc
DOM stream now outputs <elem/> for empty elements
2007-11-22 16:49:25 +00:00
jez
95857fc467
detect duplicate variable and parameter names
2007-11-21 22:35:04 +00:00
jez
341d3db1ac
reworked stylesheet compiler and inclusion to trap illegal elements as xsl:stylesheet's children
2007-11-21 22:34:15 +00:00
jez
a9a5858300
working on detecting illegal xsl:stylesheet children - including is currently broken
2007-11-20 23:12:08 +00:00
jez
a0083c14d2
''
2007-11-19 22:11:05 +00:00
jez
0d385d1ab2
xsl:call-template throws if it can't find a matching template
2007-11-16 23:11:39 +00:00
jez
a9d7e1dcdd
verify xsl:sort attribute values
2007-11-16 23:10:41 +00:00
jez
7962545efb
Blow up if unknown child element encounter
2007-11-16 22:27:21 +00:00
jez
308cde7df7
xsl:templates - make sure any mode attribute is not empty
2007-11-16 22:05:42 +00:00
jez
bfe132b8a5
ensure xsl:choose has at least one xsl:when
2007-11-16 22:03:47 +00:00
jez
8f6b783dc7
don't actually need to worry about refcounting here - in fact even though I was keeping count, I wasn't actually doing anything with it :)
2007-11-12 09:06:25 +00:00
jez
67ad360326
tightened constness on DOMImplementation
2007-11-12 09:04:54 +00:00
jez
aacb33a3bd
made destructor public
2007-11-12 09:03:47 +00:00
jez
7b5f83ee43
fixed for empty comment
2007-11-11 21:31:49 +00:00
jez
a1c71b3625
xsl:message can contain an xsl:message - now handled properly
2007-11-11 21:31:10 +00:00
jez
99a5d5cb85
fixed local-name for namespace nodes
2007-11-10 22:23:36 +00:00
jez
7912efaa62
Stream Document fragment nodes properly
2007-11-10 22:22:26 +00:00
jez
68a6d52d11
don't output attributes in the xsl namespace or declare the namespace itself
2007-11-08 23:05:46 +00:00
jez
2053c94f4a
Use std::stable_sort instead of std::sort. When xsl:sort specifies a numerical sort, but you've got some string data in there we need to maintain the relative of that string data. This is the first time I've actually used std::stable_sort. I will mark it down in my big book of programming accomplishments.
2007-11-03 01:55:20 +00:00
jez
2231423e33
escape naughty text when outputting processing instructions and comments
2007-11-02 21:55:50 +00:00