Edit

kc3-lang/libxml2/include/libxml/entities.h

Branch :

  • Show log

    Commit

  • Author : Nick Wellnhofer
    Date : 2022-02-20 19:56:41
    Hash : cf4893f7
    Message : Deprecate legacy functions

  • include/libxml/entities.h
  • /*
     * Summary: interface for the XML entities handling
     * Description: this module provides some of the entity API needed
     *              for the parser and applications.
     *
     * Copy: See Copyright for the status of this software.
     *
     * Author: Daniel Veillard
     */
    
    #ifndef __XML_ENTITIES_H__
    #define __XML_ENTITIES_H__
    
    #include <libxml/xmlversion.h>
    #include <libxml/tree.h>
    
    #ifdef __cplusplus
    extern "C" {
    #endif
    
    /*
     * The different valid entity types.
     */
    typedef enum {
        XML_INTERNAL_GENERAL_ENTITY = 1,
        XML_EXTERNAL_GENERAL_PARSED_ENTITY = 2,
        XML_EXTERNAL_GENERAL_UNPARSED_ENTITY = 3,
        XML_INTERNAL_PARAMETER_ENTITY = 4,
        XML_EXTERNAL_PARAMETER_ENTITY = 5,
        XML_INTERNAL_PREDEFINED_ENTITY = 6
    } xmlEntityType;
    
    /*
     * An unit of storage for an entity, contains the string, the value
     * and the linkind data needed for the linking in the hash table.
     */
    
    struct _xmlEntity {
        void           *_private;	        /* application data */
        xmlElementType          type;       /* XML_ENTITY_DECL, must be second ! */
        const xmlChar          *name;	/* Entity name */
        struct _xmlNode    *children;	/* First child link */
        struct _xmlNode        *last;	/* Last child link */
        struct _xmlDtd       *parent;	/* -> DTD */
        struct _xmlNode        *next;	/* next sibling link  */
        struct _xmlNode        *prev;	/* previous sibling link  */
        struct _xmlDoc          *doc;       /* the containing document */
    
        xmlChar                *orig;	/* content without ref substitution */
        xmlChar             *content;	/* content or ndata if unparsed */
        int                   length;	/* the content length */
        xmlEntityType          etype;	/* The entity type */
        const xmlChar    *ExternalID;	/* External identifier for PUBLIC */
        const xmlChar      *SystemID;	/* URI for a SYSTEM or PUBLIC Entity */
    
        struct _xmlEntity     *nexte;	/* unused */
        const xmlChar           *URI;	/* the full URI as computed */
        int                    owner;	/* does the entity own the childrens */
        int			 checked;	/* was the entity content checked */
    					/* this is also used to count entities
    					 * references done from that entity
    					 * and if it contains '<' */
    };
    
    /*
     * All entities are stored in an hash table.
     * There is 2 separate hash tables for global and parameter entities.
     */
    
    typedef struct _xmlHashTable xmlEntitiesTable;
    typedef xmlEntitiesTable *xmlEntitiesTablePtr;
    
    /*
     * External functions:
     */
    
    #ifdef LIBXML_LEGACY_ENABLED
    XML_DEPRECATED
    XMLPUBFUN void XMLCALL
    		xmlInitializePredefinedEntities	(void);
    #endif /* LIBXML_LEGACY_ENABLED */
    
    XMLPUBFUN xmlEntityPtr XMLCALL
    			xmlNewEntity		(xmlDocPtr doc,
    						 const xmlChar *name,
    						 int type,
    						 const xmlChar *ExternalID,
    						 const xmlChar *SystemID,
    						 const xmlChar *content);
    XMLPUBFUN xmlEntityPtr XMLCALL
    			xmlAddDocEntity		(xmlDocPtr doc,
    						 const xmlChar *name,
    						 int type,
    						 const xmlChar *ExternalID,
    						 const xmlChar *SystemID,
    						 const xmlChar *content);
    XMLPUBFUN xmlEntityPtr XMLCALL
    			xmlAddDtdEntity		(xmlDocPtr doc,
    						 const xmlChar *name,
    						 int type,
    						 const xmlChar *ExternalID,
    						 const xmlChar *SystemID,
    						 const xmlChar *content);
    XMLPUBFUN xmlEntityPtr XMLCALL
    			xmlGetPredefinedEntity	(const xmlChar *name);
    XMLPUBFUN xmlEntityPtr XMLCALL
    			xmlGetDocEntity		(const xmlDoc *doc,
    						 const xmlChar *name);
    XMLPUBFUN xmlEntityPtr XMLCALL
    			xmlGetDtdEntity		(xmlDocPtr doc,
    						 const xmlChar *name);
    XMLPUBFUN xmlEntityPtr XMLCALL
    			xmlGetParameterEntity	(xmlDocPtr doc,
    						 const xmlChar *name);
    #ifdef LIBXML_LEGACY_ENABLED
    XML_DEPRECATED
    XMLPUBFUN const xmlChar * XMLCALL
    			xmlEncodeEntities	(xmlDocPtr doc,
    						 const xmlChar *input);
    #endif /* LIBXML_LEGACY_ENABLED */
    XMLPUBFUN xmlChar * XMLCALL
    			xmlEncodeEntitiesReentrant(xmlDocPtr doc,
    						 const xmlChar *input);
    XMLPUBFUN xmlChar * XMLCALL
    			xmlEncodeSpecialChars	(const xmlDoc *doc,
    						 const xmlChar *input);
    XMLPUBFUN xmlEntitiesTablePtr XMLCALL
    			xmlCreateEntitiesTable	(void);
    #ifdef LIBXML_TREE_ENABLED
    XMLPUBFUN xmlEntitiesTablePtr XMLCALL
    			xmlCopyEntitiesTable	(xmlEntitiesTablePtr table);
    #endif /* LIBXML_TREE_ENABLED */
    XMLPUBFUN void XMLCALL
    			xmlFreeEntitiesTable	(xmlEntitiesTablePtr table);
    #ifdef LIBXML_OUTPUT_ENABLED
    XMLPUBFUN void XMLCALL
    			xmlDumpEntitiesTable	(xmlBufferPtr buf,
    						 xmlEntitiesTablePtr table);
    XMLPUBFUN void XMLCALL
    			xmlDumpEntityDecl	(xmlBufferPtr buf,
    						 xmlEntityPtr ent);
    #endif /* LIBXML_OUTPUT_ENABLED */
    #ifdef LIBXML_LEGACY_ENABLED
    XMLPUBFUN void XMLCALL
    			xmlCleanupPredefinedEntities(void);
    #endif /* LIBXML_LEGACY_ENABLED */
    
    
    #ifdef __cplusplus
    }
    #endif
    
    # endif /* __XML_ENTITIES_H__ */