LibreOffice Module sax (master) 1
Namespaces | Macros | Functions | Variables
fastserializer.cxx File Reference
#include "fastserializer.hxx"
#include <com/sun/star/xml/sax/FastTokenHandler.hpp>
#include <rtl/math.h>
#include <sal/log.hxx>
#include <comphelper/processfactory.hxx>
#include <comphelper/sequence.hxx>
#include <cassert>
#include <optional>
#include <string.h>
#include <string_view>
#include <utility>
#include <iostream>
#include <set>
Include dependency graph for fastserializer.cxx:

Go to the source code of this file.

Namespaces

namespace  sax_fastparser
 

Macros

#define HAS_NAMESPACE(x)   ((x & 0xffff0000) != 0)
 
#define NAMESPACE(x)   (x >> 16)
 
#define TOKEN(x)   (x & 0xffff)
 
#define N_CHARS(string)   (SAL_N_ELEMENTS(string) - 1)
 

Functions

template<typename Int >
static std::optional< std::pair< unsigned, Int > > sax_fastparser::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 sax_fastparser::isHexDigit (char c)
 
static void sax_fastparser::lcl_DebugMergeAppend (std::deque< sal_Int32 > &rLeftEndedElements, std::deque< sal_Int32 > &rLeftStartedElements, std::deque< sal_Int32 > &rRightEndedElements, std::deque< sal_Int32 > &rRightStartedElements)
 
static void sax_fastparser::lcl_DebugMergePrepend (std::deque< sal_Int32 > &rLeftEndedElements, std::deque< sal_Int32 > &rLeftStartedElements, std::deque< sal_Int32 > &rRightEndedElements, std::deque< sal_Int32 > &rRightStartedElements)
 

Variables

const char sClosingBracket [] = ">"
 
const char sSlashAndClosingBracket [] = "/>"
 
constexpr OStringLiteral sColon = ":"
 
const char sOpeningBracket [] = "<"
 
const char sOpeningBracketAndSlash [] = "</"
 
const char sQuote [] = "\""
 
const char sEqualSignAndQuote [] = "=\""
 
const char sSpace [] = " "
 
const char sXmlHeader [] = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n"
 

Macro Definition Documentation

◆ HAS_NAMESPACE

#define HAS_NAMESPACE (   x)    ((x & 0xffff0000) != 0)

Definition at line 43 of file fastserializer.cxx.

◆ N_CHARS

#define N_CHARS (   string)    (SAL_N_ELEMENTS(string) - 1)

Definition at line 47 of file fastserializer.cxx.

◆ NAMESPACE

#define NAMESPACE (   x)    (x >> 16)

Definition at line 44 of file fastserializer.cxx.

◆ TOKEN

#define TOKEN (   x)    (x & 0xffff)

Definition at line 45 of file fastserializer.cxx.

Variable Documentation

◆ sClosingBracket

const char sClosingBracket[] = ">"

◆ sColon

constexpr OStringLiteral sColon = ":"
constexpr

◆ sEqualSignAndQuote

const char sEqualSignAndQuote[] = "=\""

◆ sOpeningBracket

const char sOpeningBracket[] = "<"

◆ sOpeningBracketAndSlash

const char sOpeningBracketAndSlash[] = "</"

◆ sQuote

const char sQuote[] = "\""

◆ sSlashAndClosingBracket

const char sSlashAndClosingBracket[] = "/>"

◆ sSpace

const char sSpace[] = " "

◆ sXmlHeader

const char sXmlHeader[] = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n"

Definition at line 57 of file fastserializer.cxx.

Referenced by sax_fastparser::FastSaxSerializer::startDocument().