/xmlbench/trunk

To get this branch, use:
bzr branch http://darksoft.org/webbzr/xmlbench/trunk

« back to all changes in this revision

Viewing changes to parse/rxp.c

  • Committer: Suren A. Chilingaryan
  • Date: 2009-02-16 09:27:17 UTC
  • Revision ID: csa@dside.dyndns.org-20090216092717-wipyvaaw2srxhgns
Initial import

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include <stdio.h>
 
2
#include <sys/time.h>
 
3
 
 
4
#define CHAR_SIZE 8
 
5
#include <xmlparser.h>
 
6
#include <stdio16.h>
 
7
#include <input.h>
 
8
 
 
9
#include "tools.h"
 
10
 
 
11
void initXML(struct TestData *td) {
 
12
    init_parser();
 
13
}
 
14
 
 
15
void releaseXML(struct TestData *td) {
 
16
    deinit_parser();
 
17
}
 
18
 
 
19
void parseXML(struct TestData *td, unsigned long iter) {
 
20
    Parser doc;
 
21
    FILE16 *data;
 
22
    XBit tree;
 
23
    InputSource source;
 
24
    
 
25
    doc=NewParser();
 
26
    data=MakeFILE16FromString(td->xml,td->xmllen,"r");
 
27
    source=SourceFromFILE16("membuf",data);
 
28
    ParserPush(doc,source);
 
29
    tree=ReadXTree(doc);
 
30
    while ((tree->type!=XBIT_start)&&(tree->type!=XBIT_end)&&(tree->type!=XBIT_eof)) {
 
31
        if (tree->type==XBIT_error) {
 
32
            ParserPerror(doc, tree);
 
33
            exit(1);
 
34
        }
 
35
        FreeXTree(tree);
 
36
        tree=ReadXTree(doc);
 
37
    }
 
38
    FreeXTree(tree);
 
39
    FreeParser(doc); /* Closes source and data */
 
40
}
 
41
 
 
42
 
 
43
int main(int argc, char *argv[]) {
 
44
    return Test(argc,argv);
 
45
}