|
LibreOffice Module sax (master) 1
|
Classes | |
| class | CachedOutputStream |
| class | FastAttributeList |
| class | FastSaxParser |
| class | FastSaxParserImpl |
| class | FastSaxSerializer |
| Receives notification of sax document events to write into an XOutputStream. More... | |
| class | FastSerializerHelper |
| class | FastTokenHandlerBase |
| A native C++ interface to tokenisation. More... | |
| class | ForMergeBase |
| struct | TokenValue |
| struct | UnknownAttribute |
Typedefs | |
| typedef std::shared_ptr< FastSerializerHelper > | FSHelperPtr |
| typedef std::vector< TokenValue > | TokenValueList |
| typedef std::shared_ptr< FastSerializerHelper > | FSHelperPtr |
Enumerations | |
| enum class | MergeMarks { APPEND = 0 , PREPEND = 1 , POSTPONE = 2 } |
Functions | |
| template<typename Int > | |
| static std::optional< std::pair< unsigned, Int > > | invalidChar (char const *string, Int length, Int index) |
| Characters not allowed in XML 1.0 XML 1.1 would exclude only U+0000. More... | |
| static bool | isHexDigit (char c) |
| static void | lcl_DebugMergeAppend (std::deque< sal_Int32 > &rLeftEndedElements, std::deque< sal_Int32 > &rLeftStartedElements, std::deque< sal_Int32 > &rRightEndedElements, std::deque< sal_Int32 > &rRightStartedElements) |
| static void | lcl_DebugMergePrepend (std::deque< sal_Int32 > &rLeftEndedElements, std::deque< sal_Int32 > &rLeftStartedElements, std::deque< sal_Int32 > &rRightEndedElements, std::deque< sal_Int32 > &rRightStartedElements) |
| FastAttributeList & | castToFastAttributeList (const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) |
| const char * | UseIf (const char *s, bool bUse) |
| template<class TString > | |
| std::optional< TString > | UseIf (const TString &s, bool bUse) |
| typedef std::shared_ptr< FastSerializerHelper > sax_fastparser::FSHelperPtr |
Definition at line 163 of file fshelper.hxx.
| typedef std::vector<TokenValue> sax_fastparser::TokenValueList |
Definition at line 43 of file fastserializer.hxx.
|
strong |
| Enumerator | |
|---|---|
| APPEND | |
| PREPEND | |
| POSTPONE | |
Definition at line 41 of file fshelper.hxx.
|
inline |
Definition at line 240 of file fastattribs.hxx.
Referenced by sax_fastparser::FastAttributeList::add(), and sax_fastparser::FastAttributeList::FastAttributeList().
|
static |
Characters not allowed in XML 1.0 XML 1.1 would exclude only U+0000.
This assumes that string is UTF-8, but which appears to generally be the case: The only user of this FastSaxSerializer code is FastSerializerHelper, and when its constructor (sax/source/tools/fshelper.cxx) is called with bWriteHeader being true, it calls FastSaxSerializer::startDocument, which writes sXmlHeader claiming encoding="UTF-8". The only place that appears to construct FastSerializerHelper appears to be XmlFilterBase::openFragmentStreamWithSerializer (oox/source/core/xmlfilterbase.cxx), and it only passes false for bWriteHeader when the given rMediaType contains "vml" but not "+xml" (see https://git.libreoffice.org/core/+/6a11add2c4ea975356cfb7bab02301788c79c904%5E!/ "XLSX VML Export fixes", stating "Don't write xml headers for vml files"). But lets assume that even such Vector Markup Language files are written as UTF-8.
Definition at line 121 of file fastserializer.cxx.
Referenced by sax_fastparser::FastSaxSerializer::write(), and sax_fastparser::FastSaxSerializer::writeBytes().
|
static |
Definition at line 150 of file fastserializer.cxx.
Referenced by sax_fastparser::FastSaxSerializer::write().
|
static |
Definition at line 524 of file fastserializer.cxx.
Referenced by sax_fastparser::FastSaxSerializer::mergeTopMarks().
|
static |
Definition at line 550 of file fastserializer.cxx.
Referenced by sax_fastparser::FastSaxSerializer::mergeTopMarks().
|
inline |
Definition at line 167 of file fshelper.hxx.
| std::optional< TString > sax_fastparser::UseIf | ( | const TString & | s, |
| bool | bUse | ||
| ) |
Definition at line 170 of file fshelper.hxx.