/* Please see the LICENSE file for copyright and distribution information */

#ifndef __RUBY_XSLT_H__
#define __RUBY_XSLT_H__

#include <ruby.h>
#include <rubyio.h>
// #include <libxml/parser.h>
// #include <libxml/debugXML.h>
#include <libxslt/extra.h>
// #include <libxslt/xslt.h>
// #include <libxslt/xsltInternals.h>
// #include <libxslt/transform.h>
#include <libxslt/xsltutils.h>

#include <string.h>
#include <libxml/xmlmemory.h>
#include <libxml/debugXML.h>
#include <libxml/HTMLtree.h>
#include <libxml/xmlIO.h>
//#include <libxml/DOCBparser.h>
#include <libxml/xinclude.h>
#include <libxml/catalog.h>
#include <libxslt/xslt.h>
#include <libxslt/xsltInternals.h>
#include <libxslt/transform.h>
#include <libxslt/xsltutils.h>


#define RUBY_XSLT_VERSION  "0.3.0"
#define RUBY_XSLT_VERNUM   030

#define RUBY_XSLT_XSLSRC_TYPE_NULL    0
#define RUBY_XSLT_XSLSRC_TYPE_STR     1
#define RUBY_XSLT_XSLSRC_TYPE_FILE    2
#define RUBY_XSLT_XMLSRC_TYPE_NULL    0
#define RUBY_XSLT_XMLSRC_TYPE_STR     1
#define RUBY_XSLT_XMLSRC_TYPE_FILE    2

/*
extern VALUE mXML;
extern VALUE cXSLT;
*/

typedef struct RbTxslt {
  int   iXmlType;
  VALUE xXmlData;
  
  int   iXslType;
  VALUE xXslData;
} RbTxslt;

#endif
