| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@16443 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
| |
always writes to a TStream (or its descendant), and for text files we use a simple TStream-compatible wrapper.
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@15755 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
| |
optimization in r14194.
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@14648 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
|
|
| |
* Moved line ending processing from the encoder to a higher level; without this, implementing/using external encoders is very problematic.
+ Implemented line ending processing for c14n mode.
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@14194 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
|
|
|
| |
* dedicated procedure for writing the document node;
* no indenting in c14n mode;
* ignore Specified property of the attributes in c14n mode.
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@14192 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
| |
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@14186 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
|
|
|
| |
allows to drop all the {$ifdef fpc}@{$endif} ugliness.
* Also changed TSpecialCharCallback to take the string and the index, so it can process certain sequences, not only single chars.
* In canonical mode, CDATA sections are written as text.
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@13906 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
| |
sort them as required by c14n.
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@13894 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
| |
data is not empty
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@13856 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
| |
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@13789 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
| |
Dariusz Mazur (with some modifications).
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@13627 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
| |
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@13603 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
| |
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@13602 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
| |
#13#10), fixes #13879.
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@13247 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
fcl-xml/src/dom.pp: resolved a number of Level 1 conformance issues:
* Node.Normalize always deletes empty text nodes
* Node.Normalize is recursive into Attributes
* Node.InsertBefore corrected exception code in case when RefChild is
not one of node's children
+ Node.InsertBefore added missing check for possible cycle in tree
+ Node.AppendChild and Node.InsertBefore added checking type of NewChild
+ CloneNode enabled for Fragment and Entity
- CloneNode deleted for DocumentType (w3 specs directly prohibit cloning
it between documents, and cloning within one document is claimed
'implementation specific' - but makes no sense).
+ Node.ImportNode is now working
* Uncommented Level 2 node properties (NamespaceURI, localName and
Prefix), this caused a name clash and a lot of function argument
renames.
fcl-xml/src/xmlutils.pp:
+ overloaded IsXmlName() that accepts PWideChars
fcl-xml/src/xmlconf.pp
* Applied a fix similar to xmlcfg.pp for Mantis #10554
fcl-xml/src/xmlread.pp:
* Major: Got errors reported at correct locations for all 1600+ negative
tests. Easy to say, but it required modifying almost every second
line of code.
* TContentParticle references an existing element definition instead of
storing its own name (this allows content model matching without
string comparisons).
* Resorted to old-style 'object' for TElementValidator and to plain
procedures for decoders (allows to drop almost all related memory
management).
* Moved parameter entity detection from char to token level, this
simplifies things a bit.
+ Added second level of buffering to input source (a step towards
supporting arbitrary encodings).
* The main parsing loop contains no implicit exception frames now.
fcl-xml/src/xmlwrite.pp
* Replaced the stupid indenting algorithm with a simple rule: "Do not
write indents adjacent to text nodes". Now it does not make a mess
out of the documents which were parsed with PreserveWhitespace=True.
* Use specialized node properties instead of generic ones, this
eliminates WideString copies and results in almost 2x performance
boost in Windows.
* Even more performance:
* Write line endings together with indents -> twice less calls.
* Increase slack in buffer and write strings with known length (i.e.
most of markup) without overflow checking.
fcl-xml/tests/xmlts.pp:
* Use parser options instead of dedicated procedure to 'canonicalize'
documents, the parser has become mature enough to do that.
* Fatal error in non-valid category is a test failure, as well as
validation error alone in not-wellformed category.
fcl-xml/src/README
* Brought a bit up to date
fcl-xml/tests/README
+ Added testsuite errata/issues
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@10314 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
|
| |
* remove old fpmake
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@9910 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
| |
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@8343 3ad0048d-3df7-0310-abae-a5850022a9f2
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
+ DTD validation
+ Correct reporting of the position of most fatal errors
+ TDOMDocument.CreateElement and others check their arguments for validity
(INVALID_CHARACTER_ERR is reported where specification says)
+ property TDOMAttr.DataType
+ implemented TDOMDocument.GetElementByID
* Common code moved to xmlutils.pp
* whitespace in PublicID literals is normalized
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@6749 3ad0048d-3df7-0310-abae-a5850022a9f2
|
|
|
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@6655 3ad0048d-3df7-0310-abae-a5850022a9f2
|