Home modules.gotpike.org
Username: Password: [Create Account]
[Forgot Password?]

Modules

ADT
Database
GTK2
GUI
IP
PiJAX
Public
Sql
Stdio
Subversion
System
Tools
Xosd
lua
v4l2
wx

Recent Changes

Public.Parser.XML2 1.50
Public.ZeroMQ 1.1
Public.Template.Mustache 1.0
Public.Protocols.XMPP 1.4
Sql.Provider.jdbc 1.0

Popular Downloads

Public.Parser.JSON2 1.0
Public.Parser.JSON 0.2
GTK2 2.23
Public.Web.FCGI 1.8
Public.Parser.XML2 1.48


Module Information
Public.Parser.XML2
Viewing contents of Public_Parser_XML2-1.16/XMLReader.c

/* Generated from "XMLReader.cmod" by precompile.pike
 *
 * Do NOT edit this file.
 */

#undef PRECOMPILE_API_VERSION
#define PRECOMPILE_API_VERSION 2


#line 1 "XMLReader.cmod"
/*
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License as
 * published by the Free Software Foundation; either version 2 of the
 * License, or (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 *
 * $Id: XMLReader.cmod,v 1.9 2005/05/06 03:13:00 hww3 Exp $
 */

/*
 * File licensing and authorship information block.
 *
 * Version: MPL 1.1/LGPL 2.1
 *
 * The contents of this file are subject to the Mozilla Public License Version
 * 1.1 (the "License"); you may not use this file except in compliance with
 * the License. You may obtain a copy of the License at
 * http://www.mozilla.org/MPL/
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
 * for the specific language governing rights and limitations under the
 * License.
 *
 * The Initial Developer of the Original Code is
 *
 * Bill Welliver 
 *
 * Portions created by the Initial Developer are Copyright (C) Bill Welliver
 * All Rights Reserved.
 *
 * Contributor(s):
 *
 * Alternatively, the contents of this file may be used under the terms of
 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
 * in which case the provisions of the LGPL are applicable instead
 * of those above. If you wish to allow use of your version of this file only
 * under the terms of the LGPL, and not to allow others to use your version
 * of this file under the terms of the MPL, indicate your decision by
 * deleting the provisions above and replace them with the notice
 * and other provisions required by the LGPL. If you do not delete
 * the provisions above, a recipient may use your version of this file under
 * the terms of any one of the MPL or the LGPL.
 *
 * Significant Contributors to this file are:
 *
 *
 */

#define THIS_IS_XML2_XMLREADER 1

#include "xml2.h"

/*! @module Public
 */

/*! @module Parser
 */

/*! @module XML2
 */

/*! @class XMLReader
 *!
 *! A simplified parser for XML documents. Similar to the C# XMLReader 
 *! class.
 */
#ifdef HAVE_LIBXML_XMLREADER_H


#undef class_XMLReader_defined
#define class_XMLReader_defined
struct program *XMLReader_program=NULL;
static int XMLReader_program_fun_num=-1;

#undef var_object_data_XMLReader_defined
#define var_object_data_XMLReader_defined

#undef THIS
#define THIS ((struct XMLReader_struct *)(Pike_interpreter.frame_pointer->current_storage))

#undef THIS_XMLREADER
#define THIS_XMLREADER ((struct XMLReader_struct *)(Pike_interpreter.frame_pointer->current_storage))

#undef OBJ2_XMLREADER
#define OBJ2_XMLREADER(o) ((struct XMLReader_struct *)(o->storage+XMLReader_storage_offset))

#undef GET_XMLREADER_STORAGE
#define GET_XMLREADER_STORAGE ((struct XMLReader_struct *)(o->storage+XMLReader_storage_offset)
static ptrdiff_t XMLReader_storage_offset;
struct XMLReader_struct {

#ifdef var_object_data_XMLReader_defined
#line 83 "XMLReader.cmod"
XMLREADER_OBJECT_DATA   *object_data;
#endif /* var_object_data_XMLReader_defined */
};
#define f_XMLReader_cq__sprintf_defined
ptrdiff_t f_XMLReader_cq__sprintf_fun_num = 0;
void f_XMLReader_cq__sprintf(INT32 args) {
#line 85 "XMLReader.cmod"
INT_TYPE type;
#line 85 "XMLReader.cmod"
struct svalue * t;
#line 85 "XMLReader.cmod"
if(args != 2) wrong_number_of_args_error("_sprintf",args,2);
#line 85 "XMLReader.cmod"
if(Pike_sp[0-2].type != PIKE_T_INT) SIMPLE_BAD_ARG_ERROR("_sprintf",1,"int");
type=Pike_sp[0-2].u.integer;
#line 85 "XMLReader.cmod"
t=Pike_sp+1-2; dmalloc_touch_svalue(Pike_sp+1-2);
{
  char * desc;

  push_text("XMLReader()");
}

}
/*! @decl int read()
 *!
 *! reads the next node of the document and loads its data.
 *!
 *! returns 1 if a node was read, 0 if no additional nodes are available,
 *!  and throws an error if a parse error occurred.
 */
#define f_XMLReader_read_defined
ptrdiff_t f_XMLReader_read_fun_num = 0;
void f_XMLReader_read(INT32 args) {
#line 99 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("read",args,0);
{
  int res;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }
  res = xmlTextReaderRead(THIS->object_data->reader);
  if(res == 1) /* we got data to process! */
  {
    push_int(1);
    return;
  }
  else if (res == 0)
  {
    push_int(0);
    return;
  }
  else
  {
    Pike_error("unable to parse, result code: %d!\n", res);
  }
}

}
/*! @decl int node_type()
 *! 
 *!  returns the type of the current node. Types are described here:
 *!   http://dotgnu.org/pnetlib-doc/System/Xml/XmlNodeType.html
 */
#define f_XMLReader_node_type_defined
ptrdiff_t f_XMLReader_node_type_fun_num = 0;
void f_XMLReader_node_type(INT32 args) {
#line 129 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("node_type",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderNodeType(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 137 "XMLReader.cmod"
}

}
/*! @decl int depth()
 *! 
 *!   returns the depth of the current node within the tree.
 */
#define f_XMLReader_depth_defined
ptrdiff_t f_XMLReader_depth_fun_num = 0;
void f_XMLReader_depth(INT32 args) {
#line 143 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("depth",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderDepth(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 151 "XMLReader.cmod"
}

}
/*! @decl int has_attributes()
 *! 
 *!  Does the node have attributes?
 */
#define f_XMLReader_has_attributes_defined
ptrdiff_t f_XMLReader_has_attributes_fun_num = 0;
void f_XMLReader_has_attributes(INT32 args) {
#line 157 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("has_attributes",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderHasAttributes(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 165 "XMLReader.cmod"
}

}
/*! @decl int attribute_count()
 *! 
 *!  returns the number of attributes associated with the current node.
 */
#define f_XMLReader_attribute_count_defined
ptrdiff_t f_XMLReader_attribute_count_fun_num = 0;
void f_XMLReader_attribute_count(INT32 args) {
#line 171 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("attribute_count",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderAttributeCount(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 179 "XMLReader.cmod"
}

}
/*! @decl int next_sibling()
 *! 
 */
#define f_XMLReader_next_sibling_defined
ptrdiff_t f_XMLReader_next_sibling_fun_num = 0;
void f_XMLReader_next_sibling(INT32 args) {
#line 184 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("next_sibling",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderNextSibling(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 192 "XMLReader.cmod"
}

}
/*! @decl int next()
 *! 
 */
#define f_XMLReader_next_defined
ptrdiff_t f_XMLReader_next_fun_num = 0;
void f_XMLReader_next(INT32 args) {
#line 197 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("next",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderNext(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 205 "XMLReader.cmod"
}

}
/*! @decl int element()
 *! 
 */
#define f_XMLReader_element_defined
ptrdiff_t f_XMLReader_element_fun_num = 0;
void f_XMLReader_element(INT32 args) {
#line 210 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("element",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderMoveToElement(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 218 "XMLReader.cmod"
}

}
/*! @decl int first_attribute()
 *! 
 */
#define f_XMLReader_first_attribute_defined
ptrdiff_t f_XMLReader_first_attribute_fun_num = 0;
void f_XMLReader_first_attribute(INT32 args) {
#line 223 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("first_attribute",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderMoveToFirstAttribute(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 231 "XMLReader.cmod"
}

}
/*! @decl int next_attribute()
 *! 
 */
#define f_XMLReader_next_attribute_defined
ptrdiff_t f_XMLReader_next_attribute_fun_num = 0;
void f_XMLReader_next_attribute(INT32 args) {
#line 236 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("next_attribute",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderMoveToNextAttribute(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 244 "XMLReader.cmod"
}

}
/*! @decl int attribute_no()
 *! 
 */
#define f_XMLReader_attribute_no_defined
ptrdiff_t f_XMLReader_attribute_no_fun_num = 0;
void f_XMLReader_attribute_no(INT32 args) {
#line 249 "XMLReader.cmod"
INT_TYPE no;
#line 249 "XMLReader.cmod"
if(args != 1) wrong_number_of_args_error("attribute_no",args,1);
#line 249 "XMLReader.cmod"
if(Pike_sp[0-1].type != PIKE_T_INT) SIMPLE_BAD_ARG_ERROR("attribute_no",1,"int");
no=Pike_sp[0-1].u.integer;
#line 250 "XMLReader.cmod"
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderMoveToAttributeNo(THIS->object_data->reader, no)); pop_stack(); push_int(ret_); return; }while(0);
#line 257 "XMLReader.cmod"
}

}
/*! @decl int attribute_ns(string localName, string namespaceURI)
 *! 
 */
#define f_XMLReader_attribute_ns_defined
ptrdiff_t f_XMLReader_attribute_ns_fun_num = 0;
void f_XMLReader_attribute_ns(INT32 args) {
#line 262 "XMLReader.cmod"
struct pike_string * localName;
#line 262 "XMLReader.cmod"
struct pike_string * namespaceURI;
#line 262 "XMLReader.cmod"
if(args != 2) wrong_number_of_args_error("attribute_ns",args,2);
#line 262 "XMLReader.cmod"
if(Pike_sp[0-2].type != PIKE_T_STRING) SIMPLE_BAD_ARG_ERROR("attribute_ns",1,"string");
#line 262 "XMLReader.cmod"
debug_malloc_pass(localName=Pike_sp[0-2].u.string);
#line 262 "XMLReader.cmod"
if(Pike_sp[1-2].type != PIKE_T_STRING) SIMPLE_BAD_ARG_ERROR("attribute_ns",2,"string");
#line 262 "XMLReader.cmod"
debug_malloc_pass(namespaceURI=Pike_sp[1-2].u.string);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderMoveToAttributeNs(THIS->object_data->reader, 
    (const xmlChar *)localName->str, (const xmlChar *)namespaceURI->str)); pop_n_elems(2); push_int(ret_); return; }while(0);
#line 271 "XMLReader.cmod"
}

}
/*! @decl int attribute(string name)
 *! 
 */
#define f_XMLReader_attribute_defined
ptrdiff_t f_XMLReader_attribute_fun_num = 0;
void f_XMLReader_attribute(INT32 args) {
#line 276 "XMLReader.cmod"
struct pike_string * name;
#line 276 "XMLReader.cmod"
if(args != 1) wrong_number_of_args_error("attribute",args,1);
#line 276 "XMLReader.cmod"
if(Pike_sp[0-1].type != PIKE_T_STRING) SIMPLE_BAD_ARG_ERROR("attribute",1,"string");
#line 276 "XMLReader.cmod"
debug_malloc_pass(name=Pike_sp[0-1].u.string);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderMoveToAttribute(THIS->object_data->reader, 
    (const xmlChar *)name->str)); pop_stack(); push_int(ret_); return; }while(0);
#line 285 "XMLReader.cmod"
}


}
/*! @decl int has_value()
 *! 
 */
#define f_XMLReader_has_value_defined
ptrdiff_t f_XMLReader_has_value_fun_num = 0;
void f_XMLReader_has_value(INT32 args) {
#line 291 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("has_value",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderHasValue(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 299 "XMLReader.cmod"
}

}
/*! @decl int is_default()
 *! 
 */
#define f_XMLReader_is_default_defined
ptrdiff_t f_XMLReader_is_default_fun_num = 0;
void f_XMLReader_is_default(INT32 args) {
#line 304 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("is_default",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderIsDefault(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 312 "XMLReader.cmod"
}

}
/*! @decl int is_namespace_decl()
 *! 
 */
#define f_XMLReader_is_namespace_decl_defined
ptrdiff_t f_XMLReader_is_namespace_decl_fun_num = 0;
void f_XMLReader_is_namespace_decl(INT32 args) {
#line 317 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("is_namespace_decl",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderIsNamespaceDecl(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 325 "XMLReader.cmod"
}

}
/*! @decl int is_empty_element()
 *! 
 */
#define f_XMLReader_is_empty_element_defined
ptrdiff_t f_XMLReader_is_empty_element_fun_num = 0;
void f_XMLReader_is_empty_element(INT32 args) {
#line 330 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("is_empty_element",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderIsEmptyElement(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 338 "XMLReader.cmod"
}

}
/*! @decl int is_valid()
 *! 
 */
#define f_XMLReader_is_valid_defined
ptrdiff_t f_XMLReader_is_valid_fun_num = 0;
void f_XMLReader_is_valid(INT32 args) {
#line 343 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("is_valid",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderIsValid(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 351 "XMLReader.cmod"
}

}
/*! @decl int parser_column_number()
 *! 
 */
#define f_XMLReader_parser_column_number_defined
ptrdiff_t f_XMLReader_parser_column_number_fun_num = 0;
void f_XMLReader_parser_column_number(INT32 args) {
#line 356 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("parser_column_number",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderGetParserColumnNumber(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 364 "XMLReader.cmod"
}

}
/*! @decl int parser_line_number()
 *! 
 */
#define f_XMLReader_parser_line_number_defined
ptrdiff_t f_XMLReader_parser_line_number_fun_num = 0;
void f_XMLReader_parser_line_number(INT32 args) {
#line 369 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("parser_line_number",args,0);
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderGetParserLineNumber(THIS->object_data->reader));  push_int(ret_); return; }while(0);
#line 377 "XMLReader.cmod"
}

}
/*! @decl int get_parser_prop(int prop)
 *! 
 *! @param prop
 *!   the property to get
 */
#define f_XMLReader_get_parser_prop_defined
ptrdiff_t f_XMLReader_get_parser_prop_fun_num = 0;
void f_XMLReader_get_parser_prop(INT32 args) {
#line 384 "XMLReader.cmod"
INT_TYPE prop;
#line 384 "XMLReader.cmod"
if(args != 1) wrong_number_of_args_error("get_parser_prop",args,1);
#line 384 "XMLReader.cmod"
if(Pike_sp[0-1].type != PIKE_T_INT) SIMPLE_BAD_ARG_ERROR("get_parser_prop",1,"int");
prop=Pike_sp[0-1].u.integer;
#line 385 "XMLReader.cmod"
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderGetParserProp(THIS->object_data->reader, prop)); pop_stack(); push_int(ret_); return; }while(0);
#line 392 "XMLReader.cmod"
}

}
/*! @decl int set_parser_prop(int prop, int value)
 *! 
 *! @param prop
 *!   the property to set
 *!
 *! @param value
 *!   the value to set
 */
#define f_XMLReader_set_parser_prop_defined
ptrdiff_t f_XMLReader_set_parser_prop_fun_num = 0;
void f_XMLReader_set_parser_prop(INT32 args) {
#line 402 "XMLReader.cmod"
INT_TYPE prop;
#line 402 "XMLReader.cmod"
INT_TYPE value;
#line 402 "XMLReader.cmod"
if(args != 2) wrong_number_of_args_error("set_parser_prop",args,2);
#line 402 "XMLReader.cmod"
if(Pike_sp[0-2].type != PIKE_T_INT) SIMPLE_BAD_ARG_ERROR("set_parser_prop",1,"int");
prop=Pike_sp[0-2].u.integer;
#line 402 "XMLReader.cmod"
if(Pike_sp[1-2].type != PIKE_T_INT) SIMPLE_BAD_ARG_ERROR("set_parser_prop",2,"int");
value=Pike_sp[1-2].u.integer;
#line 403 "XMLReader.cmod"
{
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  do { INT_TYPE ret_=(xmlTextReaderSetParserProp(THIS->object_data->reader, prop, value)); pop_n_elems(2); push_int(ret_); return; }while(0);
#line 410 "XMLReader.cmod"
}

}
/*! @decl string name()
 *! 
 */
#define f_XMLReader_name_defined
ptrdiff_t f_XMLReader_name_fun_num = 0;
void f_XMLReader_name(INT32 args) {
#line 415 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("name",args,0);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderName(THIS->object_data->reader);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}
/*! @decl string get_attribute(string name)
 *! 
 */
#define f_XMLReader_get_attribute_1_defined
ptrdiff_t f_XMLReader_get_attribute_1_fun_num = 0;
void f_XMLReader_get_attribute_1(INT32 args) {
#line 437 "XMLReader.cmod"
struct pike_string * name;
#line 437 "XMLReader.cmod"
if(args != 1) wrong_number_of_args_error("get_attribute",args,1);
#line 437 "XMLReader.cmod"
if(Pike_sp[0-1].type != PIKE_T_STRING) SIMPLE_BAD_ARG_ERROR("get_attribute",1,"string");
#line 437 "XMLReader.cmod"
debug_malloc_pass(name=Pike_sp[0-1].u.string);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderGetAttribute(THIS->object_data->reader, name->str);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}


}
/*! @decl string get_attribute_no(string name)
 *! 
 */
#define f_XMLReader_get_attribute_no_defined
ptrdiff_t f_XMLReader_get_attribute_no_fun_num = 0;
void f_XMLReader_get_attribute_no(INT32 args) {
#line 460 "XMLReader.cmod"
INT_TYPE no;
#line 460 "XMLReader.cmod"
if(args != 1) wrong_number_of_args_error("get_attribute_no",args,1);
#line 460 "XMLReader.cmod"
if(Pike_sp[0-1].type != PIKE_T_INT) SIMPLE_BAD_ARG_ERROR("get_attribute_no",1,"int");
no=Pike_sp[0-1].u.integer;
#line 461 "XMLReader.cmod"
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderGetAttributeNo(THIS->object_data->reader, no);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}
/*! @decl string get_attribute_ns(string localName, string namespaceURI)
 *! 
 */
#define f_XMLReader_get_attribute_2_defined
ptrdiff_t f_XMLReader_get_attribute_2_fun_num = 0;
void f_XMLReader_get_attribute_2(INT32 args) {
#line 482 "XMLReader.cmod"
struct pike_string * localName;
#line 482 "XMLReader.cmod"
struct pike_string * namespaceURI;
#line 482 "XMLReader.cmod"
if(args != 2) wrong_number_of_args_error("get_attribute",args,2);
#line 482 "XMLReader.cmod"
if(Pike_sp[0-2].type != PIKE_T_STRING) SIMPLE_BAD_ARG_ERROR("get_attribute",1,"string");
#line 482 "XMLReader.cmod"
debug_malloc_pass(localName=Pike_sp[0-2].u.string);
#line 482 "XMLReader.cmod"
if(Pike_sp[1-2].type != PIKE_T_STRING) SIMPLE_BAD_ARG_ERROR("get_attribute",2,"string");
#line 482 "XMLReader.cmod"
debug_malloc_pass(namespaceURI=Pike_sp[1-2].u.string);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderGetAttributeNs(THIS->object_data->reader, 
         localName->str, namespaceURI->str);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}


}

#if defined(f_XMLReader_get_attribute_1_defined) || defined(f_XMLReader_get_attribute_2_defined)
#define f_XMLReader_get_attribute_defined
ptrdiff_t XMLReader_f_XMLReader_get_attribute_fun_num = 0;
void f_XMLReader_get_attribute(INT32 args) {
  switch(args) {
   case 1:

#ifdef f_XMLReader_get_attribute_1_defined
    f_XMLReader_get_attribute_1(args);
    return;

#endif /* f_XMLReader_get_attribute_1_defined */
    break;
   case 2:

#ifdef f_XMLReader_get_attribute_2_defined
    f_XMLReader_get_attribute_2(args);
    return;

#endif /* f_XMLReader_get_attribute_2_defined */
    break;
   default:
    wrong_number_of_args_error("get_attribute",args,1);
  }
}

#endif /* f_XMLReader_get_attribute_1_defined, f_XMLReader_get_attribute_2_defined */
/*! @decl string lookup_namespace(string|void prefix)
 *! 
 */
#define f_XMLReader_lookup_namespace_1_defined
ptrdiff_t f_XMLReader_lookup_namespace_1_fun_num = 0;
void f_XMLReader_lookup_namespace_1(INT32 args) {
#line 506 "XMLReader.cmod"
struct pike_string * prefix;
#line 506 "XMLReader.cmod"
if(args != 1) wrong_number_of_args_error("lookup_namespace",args,1);
#line 506 "XMLReader.cmod"
if(Pike_sp[0-1].type != PIKE_T_STRING) SIMPLE_BAD_ARG_ERROR("lookup_namespace",1,"string");
#line 506 "XMLReader.cmod"
debug_malloc_pass(prefix=Pike_sp[0-1].u.string);
{
  xmlChar * c;

printf("one arg!\n");
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderLookupNamespace(THIS->object_data->reader, prefix->str);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}
#define f_XMLReader_lookup_namespace_2_defined
ptrdiff_t f_XMLReader_lookup_namespace_2_fun_num = 0;
void f_XMLReader_lookup_namespace_2(INT32 args) {
#line 526 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("lookup_namespace",args,0);
{
  xmlChar * c;

printf("no args!\n");
  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderLookupNamespace(THIS->object_data->reader, NULL);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}

#if defined(f_XMLReader_lookup_namespace_1_defined) || defined(f_XMLReader_lookup_namespace_2_defined)
#define f_XMLReader_lookup_namespace_defined
ptrdiff_t XMLReader_f_XMLReader_lookup_namespace_fun_num = 0;
void f_XMLReader_lookup_namespace(INT32 args) {
  switch(args) {
   case 0:

#ifdef f_XMLReader_lookup_namespace_2_defined
    f_XMLReader_lookup_namespace_2(args);
    return;

#endif /* f_XMLReader_lookup_namespace_2_defined */
    break;
   case 1:

#ifdef f_XMLReader_lookup_namespace_1_defined
    f_XMLReader_lookup_namespace_1(args);
    return;

#endif /* f_XMLReader_lookup_namespace_1_defined */
    break;
   default:
    wrong_number_of_args_error("lookup_namespace",args,0);
  }
}

#endif /* f_XMLReader_lookup_namespace_1_defined, f_XMLReader_lookup_namespace_2_defined */
/*! @decl string xml_lang()
 *! 
 */
#define f_XMLReader_xml_lang_defined
ptrdiff_t f_XMLReader_xml_lang_fun_num = 0;
void f_XMLReader_xml_lang(INT32 args) {
#line 549 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("xml_lang",args,0);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderXmlLang(THIS->object_data->reader);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}


}
/*! @decl string prefix()
 *! 
 */
#define f_XMLReader_prefix_defined
ptrdiff_t f_XMLReader_prefix_fun_num = 0;
void f_XMLReader_prefix(INT32 args) {
#line 572 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("prefix",args,0);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderPrefix(THIS->object_data->reader);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}
/*! @decl string namespaceuri()
 *! 
 */
#define f_XMLReader_namespaceuri_defined
ptrdiff_t f_XMLReader_namespaceuri_fun_num = 0;
void f_XMLReader_namespaceuri(INT32 args) {
#line 594 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("namespaceuri",args,0);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderNamespaceUri(THIS->object_data->reader);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}
}
/*! @decl string baseuri()
 *! 
 */
#define f_XMLReader_baseuri_defined
ptrdiff_t f_XMLReader_baseuri_fun_num = 0;
void f_XMLReader_baseuri(INT32 args) {
#line 615 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("baseuri",args,0);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderBaseUri(THIS->object_data->reader);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}
/*! @decl string localname()
 *! 
 */
#define f_XMLReader_localname_defined
ptrdiff_t f_XMLReader_localname_fun_num = 0;
void f_XMLReader_localname(INT32 args) {
#line 637 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("localname",args,0);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderLocalName(THIS->object_data->reader);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}
/*! @decl string value()
 *! 
 */
#define f_XMLReader_value_defined
ptrdiff_t f_XMLReader_value_fun_num = 0;
void f_XMLReader_value(INT32 args) {
#line 659 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("value",args,0);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderValue(THIS->object_data->reader);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}
/*! @decl string string()
 *! 
 */
#define f_XMLReader_string_defined
ptrdiff_t f_XMLReader_string_fun_num = 0;
void f_XMLReader_string(INT32 args) {
#line 681 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("string",args,0);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderReadString(THIS->object_data->reader);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}
/*! @decl string inner_xml()
 *! 
 */
#define f_XMLReader_inner_xml_defined
ptrdiff_t f_XMLReader_inner_xml_fun_num = 0;
void f_XMLReader_inner_xml(INT32 args) {
#line 703 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("inner_xml",args,0);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderReadInnerXml(THIS->object_data->reader);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}
/*! @decl string outer_xml()
 *! 
 */
#define f_XMLReader_outer_xml_defined
ptrdiff_t f_XMLReader_outer_xml_fun_num = 0;
void f_XMLReader_outer_xml(INT32 args) {
#line 725 "XMLReader.cmod"
if(args != 0) wrong_number_of_args_error("outer_xml",args,0);
{
  xmlChar * c;

  if(THIS->object_data->reader == NULL)
  {
    Pike_error("no xmlReader!\n");
  }

  c = xmlTextReaderReadOuterXml(THIS->object_data->reader);
  if(c != NULL)
  {
    push_text(c);
    xmlFree(c);
  }
  else
    push_int(0);
}

}
/*! @decl void create(string xml, string|void url, int|void options)
 *!
 */
#define f_XMLReader_create_1_defined
ptrdiff_t f_XMLReader_create_1_fun_num = 0;
void f_XMLReader_create_1(INT32 args) {
#line 747 "XMLReader.cmod"
struct pike_string * xml;
#line 747 "XMLReader.cmod"
struct pike_string * url;
#line 747 "XMLReader.cmod"
INT_TYPE options;
#line 747 "XMLReader.cmod"
if(args != 3) wrong_number_of_args_error("create",args,3);
#line 747 "XMLReader.cmod"
if(Pike_sp[0-3].type != PIKE_T_STRING) SIMPLE_BAD_ARG_ERROR("create",1,"string");
#line 747 "XMLReader.cmod"
debug_malloc_pass(xml=Pike_sp[0-3].u.string);
#line 747 "XMLReader.cmod"
if(Pike_sp[1-3].type != PIKE_T_STRING) SIMPLE_BAD_ARG_ERROR("create",2,"string");
#line 747 "XMLReader.cmod"
debug_malloc_pass(url=Pike_sp[1-3].u.string);
#line 747 "XMLReader.cmod"
if(Pike_sp[2-3].type != PIKE_T_INT) SIMPLE_BAD_ARG_ERROR("create",3,"int");
options=Pike_sp[2-3].u.integer;
#line 748 "XMLReader.cmod"
{
  xmlTextReaderPtr reader;
 
  reader = xmlReaderForMemory(xml->str, xml->len, url->str, 
               NULL, options);

  if(reader == NULL)
  {
    Pike_error("unable to get xmlReader\n");
  }

  THIS->object_data->reader = reader;

  pop_n_elems(args);
}

}
#define f_XMLReader_create_2_defined
ptrdiff_t f_XMLReader_create_2_fun_num = 0;
void f_XMLReader_create_2(INT32 args) {
#line 764 "XMLReader.cmod"
struct pike_string * xml;
#line 764 "XMLReader.cmod"
if(args != 1) wrong_number_of_args_error("create",args,1);
#line 764 "XMLReader.cmod"
if(Pike_sp[0-1].type != PIKE_T_STRING) SIMPLE_BAD_ARG_ERROR("create",1,"string");
#line 764 "XMLReader.cmod"
debug_malloc_pass(xml=Pike_sp[0-1].u.string);
{
  push_text("noname.xml");
  push_int(0);

  f_XMLReader_create(3);
}



}

#if defined(f_XMLReader_create_1_defined) || defined(f_XMLReader_create_2_defined)
#define f_XMLReader_create_defined
ptrdiff_t XMLReader_f_XMLReader_create_fun_num = 0;
void f_XMLReader_create(INT32 args) {
  switch(args) {
   case 1:

#ifdef f_XMLReader_create_2_defined
    f_XMLReader_create_2(args);
    return;

#endif /* f_XMLReader_create_2_defined */
    break;
   case 3:

#ifdef f_XMLReader_create_1_defined
    f_XMLReader_create_1(args);
    return;

#endif /* f_XMLReader_create_1_defined */
    break;
   default:
    wrong_number_of_args_error("create",args,1);
  }
}

#endif /* f_XMLReader_create_1_defined, f_XMLReader_create_2_defined */

#undef internal_init_XMLReader_defined
#define internal_init_XMLReader_defined

#undef XMLReader_event_handler_defined
#define XMLReader_event_handler_defined
static void init_XMLReader_struct(void)
#line 775 "XMLReader.cmod"
{
  XMLREADER_OBJECT_DATA * dta;

  dta = 
	(XMLREADER_OBJECT_DATA*)malloc(sizeof(XMLREADER_OBJECT_DATA));
    if (!dta)
        Pike_error("init_xmlreader: Out of memory!\n");

    dta->reader = NULL;
    THIS->object_data = dta;
}


#undef internal_exit_XMLReader_defined
#define internal_exit_XMLReader_defined

#undef XMLReader_event_handler_defined
#define XMLReader_event_handler_defined
static void exit_XMLReader_struct(void)
#line 788 "XMLReader.cmod"
{ 

  if(THIS->object_data->reader != NULL)
  {
    xmlFreeTextReader(THIS->object_data->reader);
  }
  if(THIS->object_data)
  {
    free(THIS->object_data);
  }
}

#ifdef XMLReader_event_handler_defined
static void XMLReader_event_handler(int ev) {
  switch(ev) {

#ifdef internal_init_XMLReader_defined
  case PROG_EVENT_INIT: init_XMLReader_struct(); break;

#endif /* internal_init_XMLReader_defined */

#ifdef internal_exit_XMLReader_defined
  case PROG_EVENT_EXIT: exit_XMLReader_struct(); break;

#endif /* internal_exit_XMLReader_defined */
  default: break; 
  }
}

#endif /* XMLReader_event_handler_defined */
#line 801 "XMLReader.cmod"
#endif /* HAVE_LIBXML_XMLREADER_H */
/*! @endclass
 */


/*! @endmodule
 */

/*! @endmodule
 */

/*! @endmodule
 */


void pike_init_xml2_xmlreader()
{
  
#ifdef class_XMLReader_defined

#ifdef PROG_XMLREADER_ID
#line 79 "XMLReader.cmod"
  START_NEW_PROGRAM_ID(XMLREADER);
#else
#line 79 "XMLReader.cmod"
  start_new_program();

#endif /* PROG_XMLREADER_ID */

#ifndef tObjImpl_XMLREADER

#undef tObjImpl_XMLREADER
#define tObjImpl_XMLREADER tObj

#endif /* tObjImpl_XMLREADER */

#ifdef THIS_XMLREADER
  XMLReader_storage_offset = ADD_STORAGE(struct XMLReader_struct);
#endif /* THIS_XMLREADER */

#ifdef XMLReader_event_handler_defined
  pike_set_prog_event_callback(XMLReader_event_handler);

#endif /* XMLReader_event_handler_defined */

#ifdef f_XMLReader_cq__sprintf_defined
  f_XMLReader_cq__sprintf_fun_num =
#line 85 "XMLReader.cmod"
    ADD_FUNCTION2("_sprintf", f_XMLReader_cq__sprintf, tFunc("\10\200\0\0\0\177\377\377\377" tMix,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_cq__sprintf_defined */

#ifdef f_XMLReader_read_defined
  f_XMLReader_read_fun_num =
#line 99 "XMLReader.cmod"
    ADD_FUNCTION2("read", f_XMLReader_read, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_read_defined */

#ifdef f_XMLReader_node_type_defined
  f_XMLReader_node_type_fun_num =
#line 129 "XMLReader.cmod"
    ADD_FUNCTION2("node_type", f_XMLReader_node_type, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_node_type_defined */

#ifdef f_XMLReader_depth_defined
  f_XMLReader_depth_fun_num =
#line 143 "XMLReader.cmod"
    ADD_FUNCTION2("depth", f_XMLReader_depth, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_depth_defined */

#ifdef f_XMLReader_has_attributes_defined
  f_XMLReader_has_attributes_fun_num =
#line 157 "XMLReader.cmod"
    ADD_FUNCTION2("has_attributes", f_XMLReader_has_attributes, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_has_attributes_defined */

#ifdef f_XMLReader_attribute_count_defined
  f_XMLReader_attribute_count_fun_num =
#line 171 "XMLReader.cmod"
    ADD_FUNCTION2("attribute_count", f_XMLReader_attribute_count, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_attribute_count_defined */

#ifdef f_XMLReader_next_sibling_defined
  f_XMLReader_next_sibling_fun_num =
#line 184 "XMLReader.cmod"
    ADD_FUNCTION2("next_sibling", f_XMLReader_next_sibling, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_next_sibling_defined */

#ifdef f_XMLReader_next_defined
  f_XMLReader_next_fun_num =
#line 197 "XMLReader.cmod"
    ADD_FUNCTION2("next", f_XMLReader_next, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_next_defined */

#ifdef f_XMLReader_element_defined
  f_XMLReader_element_fun_num =
#line 210 "XMLReader.cmod"
    ADD_FUNCTION2("element", f_XMLReader_element, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_element_defined */

#ifdef f_XMLReader_first_attribute_defined
  f_XMLReader_first_attribute_fun_num =
#line 223 "XMLReader.cmod"
    ADD_FUNCTION2("first_attribute", f_XMLReader_first_attribute, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_first_attribute_defined */

#ifdef f_XMLReader_next_attribute_defined
  f_XMLReader_next_attribute_fun_num =
#line 236 "XMLReader.cmod"
    ADD_FUNCTION2("next_attribute", f_XMLReader_next_attribute, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_next_attribute_defined */

#ifdef f_XMLReader_attribute_no_defined
  f_XMLReader_attribute_no_fun_num =
#line 249 "XMLReader.cmod"
    ADD_FUNCTION2("attribute_no", f_XMLReader_attribute_no, tFunc("\10\200\0\0\0\177\377\377\377","\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_attribute_no_defined */

#ifdef f_XMLReader_attribute_ns_defined
  f_XMLReader_attribute_ns_fun_num =
#line 262 "XMLReader.cmod"
    ADD_FUNCTION2("attribute_ns", f_XMLReader_attribute_ns, tFunc(tString tString,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_attribute_ns_defined */

#ifdef f_XMLReader_attribute_defined
  f_XMLReader_attribute_fun_num =
#line 276 "XMLReader.cmod"
    ADD_FUNCTION2("attribute", f_XMLReader_attribute, tFunc(tString,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_attribute_defined */

#ifdef f_XMLReader_has_value_defined
  f_XMLReader_has_value_fun_num =
#line 291 "XMLReader.cmod"
    ADD_FUNCTION2("has_value", f_XMLReader_has_value, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_has_value_defined */

#ifdef f_XMLReader_is_default_defined
  f_XMLReader_is_default_fun_num =
#line 304 "XMLReader.cmod"
    ADD_FUNCTION2("is_default", f_XMLReader_is_default, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_is_default_defined */

#ifdef f_XMLReader_is_namespace_decl_defined
  f_XMLReader_is_namespace_decl_fun_num =
#line 317 "XMLReader.cmod"
    ADD_FUNCTION2("is_namespace_decl", f_XMLReader_is_namespace_decl, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_is_namespace_decl_defined */

#ifdef f_XMLReader_is_empty_element_defined
  f_XMLReader_is_empty_element_fun_num =
#line 330 "XMLReader.cmod"
    ADD_FUNCTION2("is_empty_element", f_XMLReader_is_empty_element, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_is_empty_element_defined */

#ifdef f_XMLReader_is_valid_defined
  f_XMLReader_is_valid_fun_num =
#line 343 "XMLReader.cmod"
    ADD_FUNCTION2("is_valid", f_XMLReader_is_valid, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_is_valid_defined */

#ifdef f_XMLReader_parser_column_number_defined
  f_XMLReader_parser_column_number_fun_num =
#line 356 "XMLReader.cmod"
    ADD_FUNCTION2("parser_column_number", f_XMLReader_parser_column_number, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_parser_column_number_defined */

#ifdef f_XMLReader_parser_line_number_defined
  f_XMLReader_parser_line_number_fun_num =
#line 369 "XMLReader.cmod"
    ADD_FUNCTION2("parser_line_number", f_XMLReader_parser_line_number, tFunc(tNone,"\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_parser_line_number_defined */

#ifdef f_XMLReader_get_parser_prop_defined
  f_XMLReader_get_parser_prop_fun_num =
#line 384 "XMLReader.cmod"
    ADD_FUNCTION2("get_parser_prop", f_XMLReader_get_parser_prop, tFunc("\10\200\0\0\0\177\377\377\377","\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_get_parser_prop_defined */

#ifdef f_XMLReader_set_parser_prop_defined
  f_XMLReader_set_parser_prop_fun_num =
#line 402 "XMLReader.cmod"
    ADD_FUNCTION2("set_parser_prop", f_XMLReader_set_parser_prop, tFunc("\10\200\0\0\0\177\377\377\377" "\10\200\0\0\0\177\377\377\377","\10\200\0\0\0\177\377\377\377"), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_set_parser_prop_defined */

#ifdef f_XMLReader_name_defined
  f_XMLReader_name_fun_num =
#line 415 "XMLReader.cmod"
    ADD_FUNCTION2("name", f_XMLReader_name, tFunc(tNone,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_name_defined */

#ifdef f_XMLReader_get_attribute_no_defined
  f_XMLReader_get_attribute_no_fun_num =
#line 460 "XMLReader.cmod"
    ADD_FUNCTION2("get_attribute_no", f_XMLReader_get_attribute_no, tFunc("\10\200\0\0\0\177\377\377\377",tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_get_attribute_no_defined */

#ifdef f_XMLReader_get_attribute_defined
  XMLReader_f_XMLReader_get_attribute_fun_num =
#line 482 "XMLReader.cmod"
    ADD_FUNCTION2("get_attribute", f_XMLReader_get_attribute, tOr(tFunc(tString,tString),tFunc(tString tString,tString)), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_get_attribute_defined */

#ifdef f_XMLReader_lookup_namespace_defined
  XMLReader_f_XMLReader_lookup_namespace_fun_num =
#line 526 "XMLReader.cmod"
    ADD_FUNCTION2("lookup_namespace", f_XMLReader_lookup_namespace, tOr(tFunc(tString,tString),tFunc(tNone,tString)), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_lookup_namespace_defined */

#ifdef f_XMLReader_xml_lang_defined
  f_XMLReader_xml_lang_fun_num =
#line 549 "XMLReader.cmod"
    ADD_FUNCTION2("xml_lang", f_XMLReader_xml_lang, tFunc(tNone,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_xml_lang_defined */

#ifdef f_XMLReader_prefix_defined
  f_XMLReader_prefix_fun_num =
#line 572 "XMLReader.cmod"
    ADD_FUNCTION2("prefix", f_XMLReader_prefix, tFunc(tNone,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_prefix_defined */

#ifdef f_XMLReader_namespaceuri_defined
  f_XMLReader_namespaceuri_fun_num =
#line 594 "XMLReader.cmod"
    ADD_FUNCTION2("namespaceuri", f_XMLReader_namespaceuri, tFunc(tNone,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_namespaceuri_defined */

#ifdef f_XMLReader_baseuri_defined
  f_XMLReader_baseuri_fun_num =
#line 615 "XMLReader.cmod"
    ADD_FUNCTION2("baseuri", f_XMLReader_baseuri, tFunc(tNone,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_baseuri_defined */

#ifdef f_XMLReader_localname_defined
  f_XMLReader_localname_fun_num =
#line 637 "XMLReader.cmod"
    ADD_FUNCTION2("localname", f_XMLReader_localname, tFunc(tNone,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_localname_defined */

#ifdef f_XMLReader_value_defined
  f_XMLReader_value_fun_num =
#line 659 "XMLReader.cmod"
    ADD_FUNCTION2("value", f_XMLReader_value, tFunc(tNone,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_value_defined */

#ifdef f_XMLReader_string_defined
  f_XMLReader_string_fun_num =
#line 681 "XMLReader.cmod"
    ADD_FUNCTION2("string", f_XMLReader_string, tFunc(tNone,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_string_defined */

#ifdef f_XMLReader_inner_xml_defined
  f_XMLReader_inner_xml_fun_num =
#line 703 "XMLReader.cmod"
    ADD_FUNCTION2("inner_xml", f_XMLReader_inner_xml, tFunc(tNone,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_inner_xml_defined */

#ifdef f_XMLReader_outer_xml_defined
  f_XMLReader_outer_xml_fun_num =
#line 725 "XMLReader.cmod"
    ADD_FUNCTION2("outer_xml", f_XMLReader_outer_xml, tFunc(tNone,tString), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_outer_xml_defined */

#ifdef f_XMLReader_create_defined
  XMLReader_f_XMLReader_create_fun_num =
#line 764 "XMLReader.cmod"
    ADD_FUNCTION2("create", f_XMLReader_create, tOr(tFunc(tString tString "\10\200\0\0\0\177\377\377\377",tVoid),tFunc(tString,tVoid)), 0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);

#endif /* f_XMLReader_create_defined */
#line 80 "XMLReader.cmod"
  Pike_compiler->new_program->flags |= PROGRAM_USES_PARENT;
#line 79 "XMLReader.cmod"
  XMLReader_program=end_program();
#line 79 "XMLReader.cmod"
  XMLReader_program_fun_num=add_program_constant("XMLReader",XMLReader_program,0);

#endif /* class_XMLReader_defined */
#line 819 "XMLReader.cmod"
}

void pike_exit_xml2_xmlreader()
{
  
#ifdef class_XMLReader_defined
  if(XMLReader_program) {
#line 79 "XMLReader.cmod"
    free_program(XMLReader_program);
    XMLReader_program=0;
  }

#endif /* class_XMLReader_defined */
#line 824 "XMLReader.cmod"
}



gotpike.org | Copyright © 2004 - 2019 | Pike is a trademark of Department of Computer and Information Science, Linköping University