use core::ffi::c_void;
use std::os::raw::c_char;
use std::os::raw::c_int;
use crate::abi::callbacks::{xmlGenericErrorFunc, xmlStructuredErrorFunc};
use crate::abi::types::xmlChar;
#[no_mangle]
pub static mut xmlDoValidityCheckingDefaultValue: c_int = 0;
#[no_mangle]
pub static mut xmlGetWarningsDefaultValue: c_int = 1;
#[no_mangle]
pub static mut xmlLoadExtDtdDefaultValue: c_int = 0;
#[no_mangle]
pub static mut xmlPedanticParserDefaultValue: c_int = 0;
#[no_mangle]
pub static mut xmlLineNumbersDefaultValue: c_int = 0;
#[no_mangle]
pub static mut xmlKeepBlanksDefaultValue: c_int = 1;
#[no_mangle]
pub static mut xmlSubstituteEntitiesDefaultValue: c_int = 0;
#[no_mangle]
pub static mut xmlParserDebugEntities: c_int = 0;
#[no_mangle]
pub static mut xmlIndentTreeOutput: c_int = 0;
#[no_mangle]
pub static mut xmlTreeIndentString: *const xmlChar = core::ptr::null();
#[no_mangle]
pub static mut xmlSaveNoEmptyTags: c_int = 0;
#[no_mangle]
pub static mut xmlRegisterNodeDefaultValue: Option<
unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode),
> = None;
#[no_mangle]
pub static mut xmlDeregisterNodeDefaultValue: Option<
unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode),
> = None;
#[no_mangle]
pub static mut xmlParserVersion: *const c_char = {
const S: &[u8] = b"21503\0";
S.as_ptr() as *const c_char
};
#[no_mangle]
pub static mut xmlParserMaxDepth: c_int = 256;
#[no_mangle]
pub static mut xmlDefaultBufferSize: c_int = 4096;
#[no_mangle]
pub static mut xmlBufferAllocScheme: c_int = 0;
#[no_mangle]
pub static mut xmlGenericError: Option<xmlGenericErrorFunc> = None;
#[no_mangle]
pub static mut xmlGenericErrorContext: *mut c_void = core::ptr::null_mut();
#[no_mangle]
pub static mut xmlStructuredError: Option<xmlStructuredErrorFunc> = None;
#[no_mangle]
pub static mut xmlStructuredErrorContext: *mut c_void = core::ptr::null_mut();
#[no_mangle]
pub static xmlStringText: [xmlChar; 5] = [b't', b'e', b'x', b't', 0];
#[no_mangle]
pub static xmlStringTextNoenc: [xmlChar; 9] =
[b't', b'e', b'x', b't', b'n', b'o', b'e', b'n', b'c'];
#[no_mangle]
pub static xmlStringComment: [xmlChar; 8] = [b'c', b'o', b'm', b'm', b'e', b'n', b't', 0];
#[no_mangle]
pub static xmlXPathNAN: f64 = f64::NAN;
#[no_mangle]
pub static xmlXPathPINF: f64 = f64::INFINITY;
#[no_mangle]
pub static xmlXPathNINF: f64 = f64::NEG_INFINITY;
#[no_mangle]
pub static xsltLibxmlVersion: c_int = 21503;
#[no_mangle]
pub static mut xsltGenericError: Option<xmlGenericErrorFunc> = None;
#[no_mangle]
pub static mut xsltGenericErrorContext: *mut c_void = core::ptr::null_mut();
#[no_mangle]
pub static mut xsltGenericDebugContext: *mut c_void = core::ptr::null_mut();
#[no_mangle]
pub static xsltExtMarker: [xmlChar; 1] = [0];
#[no_mangle]
pub static mut xsltDocDefaultLoader: Option<
unsafe extern "C" fn(
*const xmlChar,
*mut c_void,
c_int,
*mut crate::abi::structs::_xsltStylesheet,
*mut crate::abi::structs::_xsltTransformContext,
) -> *mut crate::abi::structs::_xmlDoc,
> = None;
#[no_mangle]
pub static mut xmlParserInputBufferCreateFilenameValue: Option<
unsafe extern "C" fn(*const c_char, c_int) -> *mut crate::abi::structs::_xmlParserInputBuffer,
> = None;
#[no_mangle]
pub static mut xmlOutputBufferCreateFilenameValue: Option<
unsafe extern "C" fn(
*const c_char,
crate::abi::structs::xmlCharEncodingHandlerPtr,
c_int,
) -> *mut crate::abi::structs::_xmlOutputBuffer,
> = None;
#[no_mangle]
pub static xmlDefaultSAXHandler: crate::abi::structs::_xmlSAXHandlerV1 =
crate::abi::structs::_xmlSAXHandlerV1 {
internalSubset: Some(crate::abi::exports_xml2::xmlSAX2InternalSubset),
isStandalone: Some(crate::abi::exports_xml2::xmlSAX2IsStandalone),
hasInternalSubset: Some(crate::abi::exports_xml2::xmlSAX2HasInternalSubset),
hasExternalSubset: Some(crate::abi::exports_xml2::xmlSAX2HasExternalSubset),
resolveEntity: Some(crate::abi::exports_xml2::xmlSAX2ResolveEntity),
getEntity: Some(crate::abi::exports_xml2::xmlSAX2GetEntity),
entityDecl: Some(crate::abi::exports_xml2::xmlSAX2EntityDecl),
notationDecl: Some(crate::abi::exports_xml2::xmlSAX2NotationDecl),
attributeDecl: Some(crate::abi::exports_xml2::xmlSAX2AttributeDecl),
elementDecl: Some(crate::abi::exports_xml2::xmlSAX2ElementDecl),
unparsedEntityDecl: Some(crate::abi::exports_xml2::xmlSAX2UnparsedEntityDecl),
setDocumentLocator: Some(crate::abi::exports_xml2::xmlSAX2SetDocumentLocator),
startDocument: Some(crate::abi::exports_xml2::xmlSAX2StartDocument),
endDocument: Some(crate::abi::exports_xml2::xmlSAX2EndDocument),
startElement: Some(crate::abi::exports_xml2::xmlSAX2StartElement),
endElement: Some(crate::abi::exports_xml2::xmlSAX2EndElement),
reference: Some(crate::abi::exports_xml2::xmlSAX2Reference),
characters: Some(crate::abi::exports_xml2::xmlSAX2Characters),
ignorableWhitespace: Some(crate::abi::exports_xml2::xmlSAX2IgnorableWhitespace),
processingInstruction: Some(crate::abi::exports_xml2::xmlSAX2ProcessingInstruction),
comment: Some(crate::abi::exports_xml2::xmlSAX2Comment),
warning: Some(crate::xml::errors::xmlParserWarning),
error: Some(crate::xml::errors::xmlParserError),
fatalError: Some(crate::xml::errors::xmlParserError),
getParameterEntity: Some(crate::abi::exports_xml2::xmlSAX2GetParameterEntity),
cdataBlock: Some(crate::abi::exports_xml2::xmlSAX2CDataBlock),
externalSubset: Some(crate::abi::exports_xml2::xmlSAX2ExternalSubset),
initialized: 1,
};
#[no_mangle]
pub static htmlDefaultSAXHandler: crate::abi::structs::_xmlSAXHandlerV1 =
crate::abi::structs::_xmlSAXHandlerV1 {
internalSubset: Some(crate::abi::exports_xml2::xmlSAX2InternalSubset),
isStandalone: None,
hasInternalSubset: None,
hasExternalSubset: None,
resolveEntity: None,
getEntity: Some(crate::abi::exports_xml2::xmlSAX2GetEntity),
entityDecl: None,
notationDecl: None,
attributeDecl: None,
elementDecl: None,
unparsedEntityDecl: None,
setDocumentLocator: Some(crate::abi::exports_xml2::xmlSAX2SetDocumentLocator),
startDocument: Some(crate::abi::exports_xml2::xmlSAX2StartDocument),
endDocument: Some(crate::abi::exports_xml2::xmlSAX2EndDocument),
startElement: Some(crate::abi::exports_xml2::xmlSAX2StartElement),
endElement: Some(crate::abi::exports_xml2::xmlSAX2EndElement),
reference: None,
characters: Some(crate::abi::exports_xml2::xmlSAX2Characters),
ignorableWhitespace: Some(crate::abi::exports_xml2::xmlSAX2IgnorableWhitespace),
processingInstruction: Some(crate::abi::exports_xml2::xmlSAX2ProcessingInstruction),
comment: Some(crate::abi::exports_xml2::xmlSAX2Comment),
warning: Some(crate::xml::errors::xmlParserWarning),
error: Some(crate::xml::errors::xmlParserError),
fatalError: Some(crate::xml::errors::xmlParserError),
getParameterEntity: None,
cdataBlock: Some(crate::abi::exports_xml2::xmlSAX2CDataBlock),
externalSubset: None,
initialized: 1,
};
#[no_mangle]
pub static xmlDefaultSAXLocator: crate::abi::callbacks::_xmlSAXLocator =
crate::abi::callbacks::_xmlSAXLocator {
getPublicId: Some(crate::abi::exports_xml2::xmlSAX2GetPublicId),
getSystemId: Some(crate::abi::exports_xml2::xmlSAX2GetSystemId),
getLineNumber: Some(crate::abi::exports_xml2::xmlSAX2GetLineNumber),
getColumnNumber: Some(crate::abi::exports_xml2::xmlSAX2GetColumnNumber),
};
#[no_mangle]
pub static mut xmlLastError: crate::abi::structs::_xmlError = crate::abi::structs::_xmlError {
domain: 0,
code: 0,
message: core::ptr::null_mut(),
level: 0,
file: core::ptr::null_mut(),
line: 0,
str1: core::ptr::null_mut(),
str2: core::ptr::null_mut(),
str3: core::ptr::null_mut(),
int1: 0,
int2: 0,
ctxt: core::ptr::null_mut(),
node: core::ptr::null_mut(),
};
pub unsafe fn sync_xml_last_error(err: *const crate::abi::structs::_xmlError) {
if err.is_null() {
return;
}
unsafe {
reset_xml_last_error();
let src = &*err;
let dst = core::ptr::addr_of_mut!(xmlLastError);
(*dst).domain = src.domain;
(*dst).code = src.code;
(*dst).level = src.level;
(*dst).line = src.line;
(*dst).int1 = src.int1;
(*dst).int2 = src.int2;
(*dst).ctxt = src.ctxt;
(*dst).node = src.node;
(*dst).message = dup_cstr(src.message as *const u8);
(*dst).file = dup_cstr(src.file as *const u8);
(*dst).str1 = dup_cstr(src.str1 as *const u8);
(*dst).str2 = dup_cstr(src.str2 as *const u8);
(*dst).str3 = dup_cstr(src.str3 as *const u8);
}
}
pub unsafe fn reset_xml_last_error() {
unsafe {
let dst = core::ptr::addr_of_mut!(xmlLastError);
if !(*dst).message.is_null() {
libc::free((*dst).message as *mut libc::c_void);
}
if !(*dst).file.is_null() {
libc::free((*dst).file as *mut libc::c_void);
}
if !(*dst).str1.is_null() {
libc::free((*dst).str1 as *mut libc::c_void);
}
if !(*dst).str2.is_null() {
libc::free((*dst).str2 as *mut libc::c_void);
}
if !(*dst).str3.is_null() {
libc::free((*dst).str3 as *mut libc::c_void);
}
*dst = crate::abi::structs::_xmlError {
domain: 0,
code: 0,
message: core::ptr::null_mut(),
level: 0,
file: core::ptr::null_mut(),
line: 0,
str1: core::ptr::null_mut(),
str2: core::ptr::null_mut(),
str3: core::ptr::null_mut(),
int1: 0,
int2: 0,
ctxt: core::ptr::null_mut(),
node: core::ptr::null_mut(),
};
}
}
unsafe fn dup_cstr(s: *const u8) -> *mut c_char {
if s.is_null() {
return core::ptr::null_mut();
}
unsafe {
let len = libc::strlen(s as *const libc::c_char) as usize;
let p = libc::malloc(len + 1) as *mut u8;
if p.is_null() {
return core::ptr::null_mut();
}
libc::memcpy(p as *mut libc::c_void, s as *const libc::c_void, len + 1);
p as *mut c_char
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlKeepBlanksDefault(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlKeepBlanksDefaultValue = v;
}
xmlKeepBlanksDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlLineNumbersDefault(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlLineNumbersDefaultValue = v;
}
xmlLineNumbersDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlSubstituteEntitiesDefault(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlSubstituteEntitiesDefaultValue = v;
}
xmlSubstituteEntitiesDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlPedanticParserDefault(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlPedanticParserDefaultValue = v;
}
xmlPedanticParserDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlRegisterNodeDefault(
func: Option<unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode)>,
) -> Option<unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode)> {
unsafe {
if func.is_some() {
xmlRegisterNodeDefaultValue = func;
}
xmlRegisterNodeDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlDeregisterNodeDefault(
func: Option<unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode)>,
) -> Option<unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode)> {
unsafe {
if func.is_some() {
xmlDeregisterNodeDefaultValue = func;
}
xmlDeregisterNodeDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn __xmlIndentTreeOutput() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlIndentTreeOutput) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlSaveNoEmptyTags() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlSaveNoEmptyTags) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlTreeIndentString() -> *mut *const xmlChar {
unsafe { core::ptr::addr_of_mut!(xmlTreeIndentString) }
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefDoValidityCheckingDefaultValue(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlDoValidityCheckingDefaultValue = v;
}
xmlDoValidityCheckingDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefGetWarningsDefaultValue(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlGetWarningsDefaultValue = v;
}
xmlGetWarningsDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefLoadExtDtdDefaultValue(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlLoadExtDtdDefaultValue = v;
}
xmlLoadExtDtdDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefPedanticParserDefaultValue(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlPedanticParserDefaultValue = v;
}
xmlPedanticParserDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefLineNumbersDefaultValue(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlLineNumbersDefaultValue = v;
}
xmlLineNumbersDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefKeepBlanksDefaultValue(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlKeepBlanksDefaultValue = v;
}
xmlKeepBlanksDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefSubstituteEntitiesDefaultValue(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlSubstituteEntitiesDefaultValue = v;
}
xmlSubstituteEntitiesDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefParserDebugEntities(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlParserDebugEntities = v;
}
xmlParserDebugEntities
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefIndentTreeOutput(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlIndentTreeOutput = v;
}
xmlIndentTreeOutput
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefTreeIndentString(v: *const c_char) -> *const c_char {
unsafe {
if !v.is_null() {
xmlTreeIndentString = v as *const xmlChar;
}
xmlTreeIndentString as *const c_char
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefSaveNoEmptyTags(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlSaveNoEmptyTags = v;
}
xmlSaveNoEmptyTags
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefRegisterNodeDefault(
func: Option<unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode)>,
) -> Option<unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode)> {
unsafe {
if func.is_some() {
xmlRegisterNodeDefaultValue = func;
}
xmlRegisterNodeDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefDeregisterNodeDefault(
func: Option<unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode)>,
) -> Option<unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode)> {
unsafe {
if func.is_some() {
xmlDeregisterNodeDefaultValue = func;
}
xmlDeregisterNodeDefaultValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefSetGenericErrorFunc(
ctx: *mut c_void,
func: Option<xmlGenericErrorFunc>,
) {
unsafe {
xmlGenericErrorContext = ctx;
xmlGenericError = func;
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefSetStructuredErrorFunc(
ctx: *mut c_void,
func: Option<xmlStructuredErrorFunc>,
) {
unsafe {
xmlStructuredErrorContext = ctx;
xmlStructuredError = func;
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefDefaultBufferSize(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlDefaultBufferSize = v;
}
xmlDefaultBufferSize
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefBufferAllocScheme(v: c_int) -> c_int {
unsafe {
if v != 0 {
xmlBufferAllocScheme = v;
}
xmlBufferAllocScheme
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefParserInputBufferCreateFilenameDefault(
func: Option<
unsafe extern "C" fn(
*const c_char,
c_int,
) -> *mut crate::abi::structs::_xmlParserInputBuffer,
>,
) -> Option<
unsafe extern "C" fn(*const c_char, c_int) -> *mut crate::abi::structs::_xmlParserInputBuffer,
> {
unsafe {
if func.is_some() {
xmlParserInputBufferCreateFilenameValue = func;
}
xmlParserInputBufferCreateFilenameValue
}
}
#[no_mangle]
pub unsafe extern "C" fn xmlThrDefOutputBufferCreateFilenameDefault(
func: Option<
unsafe extern "C" fn(
*const c_char,
crate::abi::structs::xmlCharEncodingHandlerPtr,
c_int,
) -> *mut crate::abi::structs::_xmlOutputBuffer,
>,
) -> Option<
unsafe extern "C" fn(
*const c_char,
crate::abi::structs::xmlCharEncodingHandlerPtr,
c_int,
) -> *mut crate::abi::structs::_xmlOutputBuffer,
> {
unsafe {
if func.is_some() {
xmlOutputBufferCreateFilenameValue = func;
}
xmlOutputBufferCreateFilenameValue
}
}
#[no_mangle]
pub unsafe extern "C" fn __xmlBufferAllocScheme() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlBufferAllocScheme) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlDefaultBufferSize() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlDefaultBufferSize) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlDeregisterNodeDefaultValue(
) -> *mut Option<unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode)> {
unsafe { core::ptr::addr_of_mut!(xmlDeregisterNodeDefaultValue) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlDoValidityCheckingDefaultValue() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlDoValidityCheckingDefaultValue) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlGenericError() -> *mut Option<xmlGenericErrorFunc> {
unsafe { core::ptr::addr_of_mut!(xmlGenericError) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlGenericErrorContext() -> *mut *mut c_void {
unsafe { core::ptr::addr_of_mut!(xmlGenericErrorContext) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlGetWarningsDefaultValue() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlGetWarningsDefaultValue) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlKeepBlanksDefaultValue() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlKeepBlanksDefaultValue) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlLineNumbersDefaultValue() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlLineNumbersDefaultValue) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlLoadExtDtdDefaultValue() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlLoadExtDtdDefaultValue) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlOutputBufferCreateFilenameValue() -> *mut Option<
unsafe extern "C" fn(
*const c_char,
crate::abi::structs::xmlCharEncodingHandlerPtr,
c_int,
) -> *mut crate::abi::structs::_xmlOutputBuffer,
> {
unsafe { core::ptr::addr_of_mut!(xmlOutputBufferCreateFilenameValue) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlParserDebugEntities() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlParserDebugEntities) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlParserInputBufferCreateFilenameValue() -> *mut Option<
unsafe extern "C" fn(*const c_char, c_int) -> *mut crate::abi::structs::_xmlParserInputBuffer,
> {
unsafe { core::ptr::addr_of_mut!(xmlParserInputBufferCreateFilenameValue) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlParserVersion() -> *mut *const c_char {
unsafe { core::ptr::addr_of_mut!(xmlParserVersion) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlPedanticParserDefaultValue() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlPedanticParserDefaultValue) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlRegisterNodeDefaultValue(
) -> *mut Option<unsafe extern "C" fn(*mut crate::abi::structs::_xmlNode)> {
unsafe { core::ptr::addr_of_mut!(xmlRegisterNodeDefaultValue) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlStructuredError() -> *mut Option<xmlStructuredErrorFunc> {
unsafe { core::ptr::addr_of_mut!(xmlStructuredError) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlStructuredErrorContext() -> *mut *mut c_void {
unsafe { core::ptr::addr_of_mut!(xmlStructuredErrorContext) }
}
#[no_mangle]
pub unsafe extern "C" fn __xmlSubstituteEntitiesDefaultValue() -> *mut c_int {
unsafe { core::ptr::addr_of_mut!(xmlSubstituteEntitiesDefaultValue) }
}