Sha256: ba2316a66c3b83f83a07ba2f03105fb35fa12fd777637b63fa8ac1288d93545c
Contents?: true
Size: 1.65 KB
Versions: 1
Compression:
Stored size: 1.65 KB
Contents
/* $Id: ruby_xslt_transform_context.c,v 1.1 2006/03/24 10:54:55 roscopeco Exp $ */ /* Please see the LICENSE file for copyright and distribution information */ #include "libxslt.h" #include "ruby_xslt_transform_context.h" #include "libxml-ruby/libxml.h" VALUE cXSLTTransformContext; void ruby_xslt_transform_context_free(ruby_xslt_transform_context *rxtc) { if (rxtc->ctxt != NULL) { xsltFreeTransformContext(rxtc->ctxt); rxtc->ctxt = NULL; } free(rxtc); } void ruby_xslt_transform_context_mark(ruby_xslt_transform_context *rxtc) { if (rxtc == NULL) return; if (!NIL_P(rxtc->xslt)) rb_gc_mark(rxtc->xslt); } VALUE ruby_xslt_transform_context_new(VALUE class, VALUE xslt, xsltTransformContextPtr ctxt) { ruby_xslt_transform_context *rxtc; rxtc = ALLOC(ruby_xslt_transform_context); ruby_xml_parser_count++; rxtc->ctxt = ctxt; rxtc->xslt = xslt; //fprintf(stderr,"ruby_xslt_transform_context_new 2\n"); //if (class == Qfalse) //fprintf(stderr,"ruby_xslt_transform_context_new: EEEEK!\n"); return(Data_Wrap_Struct(class, ruby_xslt_transform_context_mark, ruby_xslt_transform_context_free, rxtc)); } VALUE ruby_xslt_transform_context_new2(VALUE class, VALUE xslt) { return(ruby_xslt_transform_context_new(class, xslt, NULL)); } VALUE ruby_xslt_transform_context_new3(VALUE xslt) { return(ruby_xslt_transform_context_new2(cXSLTTransformContext, xslt)); } #ifdef RDOC_NEVER_DEFINED mXML = rb_define_module("XML"); cXSLT = rb_define_class_under(mXML, "XSLT", rb_cObject); #endif void ruby_init_xslt_transform_context(void) { cXSLTTransformContext = rb_define_class_under(cXSLT, "TransformContext", rb_cObject); }
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
libxsl-ruby-0.3.6 | ext/xml/ruby_xslt_transform_context.c |