Version 7.0
Copyright © 2021 Lowell D. Thomas
APG
… an ABNF Parser Generator
|
Go to the documentation of this file.
39 #include "../utilities/utilities.h"
53 #define XML_THROW(msg) vThrowError(spXml, (msg), spData->uiParserOffset, __LINE__, __FILE__, __func__)
56 void vThrowError(
xml* spXml,
const char* cpMsg,
aint uiOffset,
unsigned int uiLine,
const char* cpFile,
const char* cpFunc);
67 int iAttComp(
const void* vpL,
const void* vpR);
74 abool bHasEntity(uint32_t* uipChars, uint32_t uiLen, uint32_t* uipEntityOffset, uint32_t* uipEntityLen);
77 int iSortCompNames(
const uint32_t* uipLName, uint32_t uiLLen,
const uint32_t* uipRName, uint32_t uiRLen);
78 abool bCompNames(
const uint32_t* uipLName, uint32_t uiLLen,
const uint32_t* uipRName, uint32_t uiRLen);
81 int iCompNames(
const uint32_t* uipLName, uint32_t uiLLen,
const uint32_t* uipRName, uint32_t uiRLen);
void vGEDefEx(callback_data *spData)
void vGEDeclClose(callback_data *spData)
void vPITarget(callback_data *spData)
void vNotationClose(callback_data *spData)
cdata_id sCapturePhrase(xml *spXml, achar *acpPhrase, aint uiPhraseLength, aint uiOffset)
void vThrowError(xml *spXml, const char *cpMsg, aint uiOffset, unsigned int uiLine, const char *cpFile, const char *cpFunc)
void vAttlistClose(callback_data *spData)
void vRefClose(callback_data *spData)
void vXmlDeclOpen(callback_data *spData)
void vUtf84(callback_data *spData)
void vGERef(callback_data *spData)
abool bCompNames(const uint32_t *uipLName, uint32_t uiLLen, const uint32_t *uipRName, uint32_t uiRLen)
void vName(callback_data *spData)
void vDvalue(callback_data *spData)
void vEncName(callback_data *spData)
void vDChar(callback_data *spData)
abool bValidateChar(uint32_t uiChar)
void vSDeclNo(callback_data *spData)
void vDoubleh(callback_data *spData)
void vAttType(callback_data *spData)
This is the encapsulated data for the xml component. The component context or handle is an opaque poi...
void vUtf83(callback_data *spData)
void vSDeclOther(callback_data *spData)
void vHexValue(callback_data *spData)
int iSortCompNames(const uint32_t *uipLName, uint32_t uiLLen, const uint32_t *uipRName, uint32_t uiRLen)
uint32_t uiHexValue32(xml *spXml, aint uiOffset, uint32_t *uipChars, uint32_t uiCount)
uint_fast8_t achar
achar is the type for the parser's alphabet characters.
void vCharData(callback_data *spData)
void vGEDeclName(callback_data *spData)
void vDecValue(callback_data *spData)
Provides the offset into the general 32-bit vector and length of a name and value pair.
void vDtdName(callback_data *spData)
void vVersionNum(callback_data *spData)
Public header file for the APG XML parser API..
void vAscii(callback_data *spData)
void vSDeclYes(callback_data *spData)
void vXmlDeclClose(callback_data *spData)
void vVersionInfo(callback_data *spData)
void vMakeCDataIdFromInput(xml *spXml, const achar *acpInput, aint uiLen, aint uiOffset, cdata_id *spCDataId)
void vPEDeclOpen(callback_data *spData)
void vNameOtherChar(callback_data *spData)
void vPIClose(callback_data *spData)
uint_fast32_t aint
The APG parser's unsigned integer type.
void vDocument(callback_data *spData)
void vCloseQuote(callback_data *spData)
void vEStart(callback_data *spData)
void vConvertParsedData(xml *spXml, const achar *acpData, aint uiDataLen, uint32_t *uipOffset, uint32_t *uipLength)
Converts parsed UTF-8 data to UTF-32 code points.
void vPEReference(callback_data *spData)
void vAttName(callback_data *spData)
Private header for the APG XML parser's component context. Not needed by application programs.
uint32_t ui2byte(const achar *acpBytes)
void vCDEnd(callback_data *spData)
void vExtSubset(callback_data *spData)
void vEncDef(callback_data *spData)
void vAttValue(callback_data *spData)
void vPopFrame(callback_data *spData)
void vCDSectEnd(callback_data *spData)
void vPERefError(callback_data *spData)
void vElementOpen(callback_data *spData)
void vExternalID(callback_data *spData)
void vExpandEntity(xml *spXml, aint uiOffset, entity_decl *spValuei)
The data struct passed to each callback function.
void vCDRb(callback_data *spData)
void vEOpen(callback_data *spData)
void vNameStartChar(callback_data *spData)
uint32_t ui4byte(const achar *acpBytes)
void vNotationOpen(callback_data *spData)
void vETagClose(callback_data *spData)
abool bHasEntity(uint32_t *uipChars, uint32_t uiLen, uint32_t *uipEntityOffset, uint32_t *uipEntityLen)
void vElementClose(callback_data *spData)
void vPIInfoa(callback_data *spData)
void vAttlistValue(callback_data *spData)
int iCompNames(const uint32_t *uipLName, uint32_t uiLLen, const uint32_t *uipRName, uint32_t uiRLen)
void vAttlistOpen(callback_data *spData)
void vPIReserved(callback_data *spData)
void vPushFrame(callback_data *spData)
void vElAttName(callback_data *spData)
void vGEPERef(callback_data *spData)
int iAttComp(const void *vpL, const void *vpR)
void vCD2Rb(callback_data *spData)
void vNotationDef(callback_data *spData)
void vComment(callback_data *spData)
void vSTagClose(callback_data *spData)
void vDtdOpen(callback_data *spData)
uint8_t abool
abool is the APG bool type.
void vLogMsg(xml *spXml, aint uiOffset, char *cpTitle)
void vDtdClose(callback_data *spData)
uint32_t ui3byte(const achar *acpBytes)
void vPEDeclClose(callback_data *spData)
void vPIInfo(callback_data *spData)
void vEntityRef(callback_data *spData)
uint32_t uiDecValue32(xml *spXml, aint uiOffset, uint32_t *uipChars, uint32_t uiCount)
void vEmptyClose(callback_data *spData)
void vEReserved(callback_data *spData)
void vAttDef(callback_data *spData)
entity_decl * spEntityNameLookup(xml *spXml, aint uiOffset, uint32_t *uipName, uint32_t uiNameLen)
Find the left-most occurrence of the given entity name.
void vPIInfoq(callback_data *spData)
Defines a pointer to an array of 32-bit unsigned integers plus its length. Typically needed by Unicod...
void vEntityChar(callback_data *spData)
Identifies the element name, attribute name and default attribute value of attribute list declaration...
cdata_id sNormalizeAttributeValue(xml *spXml, aint uiOffset, uint32_t *uipAttValue, uint32_t uiLength, abool bIsCDATA)
int iEntityComp(const void *vpL, const void *vpR)
void vNExternalID(callback_data *spData)
Parsed character data definition.
att_decl * spLeftMostElement(xml *spXml, att_decl *spAttList)
void vPIForbidden(callback_data *spData)
void vMakeCDataDisplay(xml *spXml, cdata_id *spDataId, u32_phrase *spCData, aint uiOffset)
void vUtf82(callback_data *spData)
APG Version 7.0 is licensed under the
2-Clause BSD License,
an Open Source Initiative Approved License.