diff options
author | Mike Hommey <mh@glandium.org> | 2004-04-19 05:38:48 +0000 |
---|---|---|
committer | Mike Hommey <mh@glandium.org> | 2004-04-19 05:38:48 +0000 |
commit | 81bcf076ea11e114a60e429338a15748066de163 (patch) | |
tree | 276010ab5d17f27a96c05f77004aa84a1763af7b /doc/examples/parse3.c | |
parent | d09ab089457ae3c20cc98f9afa03379c6ebf9598 (diff) | |
download | libxml2-81bcf076ea11e114a60e429338a15748066de163.tar.gz |
Load /tmp/tmp.LovooJ/libxml2-2.6.9 intoupstream/2.6.9
packages/libxml2/branches/upstream/current.
Diffstat (limited to 'doc/examples/parse3.c')
-rw-r--r-- | doc/examples/parse3.c | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/doc/examples/parse3.c b/doc/examples/parse3.c new file mode 100644 index 0000000..a2d3a40 --- /dev/null +++ b/doc/examples/parse3.c @@ -0,0 +1,60 @@ +/** + * section: Parsing + * synopsis: Parse an XML document in memory to a tree and free it + * purpose: Demonstrate the use of xmlReadMemory() to read an XML file + * into a tree and and xmlFreeDoc() to free the resulting tree + * usage: parse3 + * test: parse3 + * author: Daniel Veillard + * copy: see Copyright for the status of this software. + */ + +#include <stdio.h> +#include <libxml/parser.h> +#include <libxml/tree.h> + +static const char *document = "<doc/>"; + +/** + * example3Func: + * @content: the content of the document + * @length: the length in bytes + * + * Parse the in memory document and free the resulting tree + */ +static void +example3Func(const char *content, int length) { + xmlDocPtr doc; /* the resulting document tree */ + + /* + * The document being in memory, it have no base per RFC 2396, + * and the "noname.xml" argument will serve as its base. + */ + doc = xmlReadMemory(content, length, "noname.xml", NULL, 0); + if (doc == NULL) { + fprintf(stderr, "Failed to parse document\n"); + return; + } + xmlFreeDoc(doc); +} + +int main(void) { + /* + * this initialize the library and check potential ABI mismatches + * between the version it was compiled for and the actual shared + * library used. + */ + LIBXML_TEST_VERSION + + example3Func(document, 6); + + /* + * Cleanup function for the XML library. + */ + xmlCleanupParser(); + /* + * this is to debug memory for regression tests + */ + xmlMemoryDump(); + return(0); +} |