nokogiri 1.10.10-java → 1.11.0-java
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of nokogiri might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Gemfile +3 -0
- data/LICENSE-DEPENDENCIES.md +1015 -947
- data/README.md +165 -91
- data/ext/java/nokogiri/HtmlDocument.java +34 -46
- data/ext/java/nokogiri/HtmlSaxParserContext.java +88 -58
- data/ext/java/nokogiri/HtmlSaxPushParser.java +1 -1
- data/ext/java/nokogiri/NokogiriService.java +1 -1
- data/ext/java/nokogiri/XmlAttr.java +13 -20
- data/ext/java/nokogiri/XmlAttributeDecl.java +11 -12
- data/ext/java/nokogiri/XmlCdata.java +3 -4
- data/ext/java/nokogiri/XmlComment.java +1 -1
- data/ext/java/nokogiri/XmlDocument.java +148 -175
- data/ext/java/nokogiri/XmlDocumentFragment.java +13 -31
- data/ext/java/nokogiri/XmlDtd.java +5 -8
- data/ext/java/nokogiri/XmlElement.java +1 -20
- data/ext/java/nokogiri/XmlElementDecl.java +23 -28
- data/ext/java/nokogiri/XmlEntityDecl.java +23 -27
- data/ext/java/nokogiri/XmlEntityReference.java +2 -2
- data/ext/java/nokogiri/XmlNamespace.java +72 -89
- data/ext/java/nokogiri/XmlNode.java +303 -406
- data/ext/java/nokogiri/XmlNodeSet.java +70 -76
- data/ext/java/nokogiri/XmlReader.java +12 -13
- data/ext/java/nokogiri/XmlRelaxng.java +10 -3
- data/ext/java/nokogiri/XmlSaxParserContext.java +15 -10
- data/ext/java/nokogiri/XmlSchema.java +87 -27
- data/ext/java/nokogiri/XmlSyntaxError.java +2 -6
- data/ext/java/nokogiri/XmlText.java +12 -9
- data/ext/java/nokogiri/XmlXpathContext.java +55 -25
- data/ext/java/nokogiri/XsltStylesheet.java +7 -15
- data/ext/java/nokogiri/internals/HtmlDomParserContext.java +52 -46
- data/ext/java/nokogiri/internals/NokogiriHandler.java +1 -1
- data/ext/java/nokogiri/internals/NokogiriHelpers.java +71 -135
- data/ext/java/nokogiri/internals/NokogiriNamespaceCache.java +90 -58
- data/ext/java/nokogiri/internals/NokogiriNamespaceContext.java +9 -2
- data/ext/java/nokogiri/internals/NokogiriXPathFunction.java +67 -10
- data/ext/java/nokogiri/internals/NokogiriXPathFunctionResolver.java +4 -2
- data/ext/java/nokogiri/internals/ParserContext.java +27 -73
- data/ext/java/nokogiri/internals/ReaderNode.java +2 -4
- data/ext/java/nokogiri/internals/XmlDomParserContext.java +18 -33
- data/ext/nokogiri/depend +476 -357
- data/ext/nokogiri/extconf.rb +507 -357
- data/ext/nokogiri/html_document.c +79 -78
- data/ext/nokogiri/html_sax_parser_context.c +2 -2
- data/ext/nokogiri/nokogiri.c +34 -40
- data/ext/nokogiri/xml_document.c +18 -4
- data/ext/nokogiri/xml_io.c +8 -6
- data/ext/nokogiri/xml_node.c +21 -1
- data/ext/nokogiri/xml_node_set.c +1 -1
- data/ext/nokogiri/xml_reader.c +6 -17
- data/ext/nokogiri/xml_relax_ng.c +29 -11
- data/ext/nokogiri/xml_sax_parser.c +2 -7
- data/ext/nokogiri/xml_sax_parser_context.c +2 -2
- data/ext/nokogiri/xml_schema.c +55 -13
- data/ext/nokogiri/xml_xpath_context.c +80 -4
- data/ext/nokogiri/xslt_stylesheet.c +1 -8
- data/lib/nokogiri.rb +22 -22
- data/lib/nokogiri/css.rb +1 -0
- data/lib/nokogiri/css/node.rb +1 -0
- data/lib/nokogiri/css/parser.rb +63 -62
- data/lib/nokogiri/css/parser.y +2 -2
- data/lib/nokogiri/css/parser_extras.rb +39 -36
- data/lib/nokogiri/css/syntax_error.rb +1 -0
- data/lib/nokogiri/css/tokenizer.rb +1 -0
- data/lib/nokogiri/css/xpath_visitor.rb +73 -43
- data/lib/nokogiri/decorators/slop.rb +1 -0
- data/lib/nokogiri/html.rb +1 -0
- data/lib/nokogiri/html/builder.rb +1 -0
- data/lib/nokogiri/html/document.rb +13 -26
- data/lib/nokogiri/html/document_fragment.rb +1 -0
- data/lib/nokogiri/html/element_description.rb +1 -0
- data/lib/nokogiri/html/element_description_defaults.rb +1 -0
- data/lib/nokogiri/html/entity_lookup.rb +1 -0
- data/lib/nokogiri/html/sax/parser.rb +1 -0
- data/lib/nokogiri/html/sax/parser_context.rb +1 -0
- data/lib/nokogiri/html/sax/push_parser.rb +1 -0
- data/lib/nokogiri/jruby/dependencies.rb +20 -0
- data/lib/nokogiri/nokogiri.jar +0 -0
- data/lib/nokogiri/syntax_error.rb +1 -0
- data/lib/nokogiri/version.rb +3 -109
- data/lib/nokogiri/version/constant.rb +5 -0
- data/lib/nokogiri/version/info.rb +182 -0
- data/lib/nokogiri/xml.rb +1 -0
- data/lib/nokogiri/xml/attr.rb +1 -0
- data/lib/nokogiri/xml/attribute_decl.rb +1 -0
- data/lib/nokogiri/xml/builder.rb +3 -2
- data/lib/nokogiri/xml/cdata.rb +1 -0
- data/lib/nokogiri/xml/character_data.rb +1 -0
- data/lib/nokogiri/xml/document.rb +20 -15
- data/lib/nokogiri/xml/document_fragment.rb +5 -6
- data/lib/nokogiri/xml/dtd.rb +1 -0
- data/lib/nokogiri/xml/element_content.rb +1 -0
- data/lib/nokogiri/xml/element_decl.rb +1 -0
- data/lib/nokogiri/xml/entity_decl.rb +1 -0
- data/lib/nokogiri/xml/entity_reference.rb +1 -0
- data/lib/nokogiri/xml/namespace.rb +1 -0
- data/lib/nokogiri/xml/node.rb +587 -249
- data/lib/nokogiri/xml/node/save_options.rb +1 -0
- data/lib/nokogiri/xml/node_set.rb +1 -0
- data/lib/nokogiri/xml/notation.rb +1 -0
- data/lib/nokogiri/xml/parse_options.rb +10 -3
- data/lib/nokogiri/xml/pp.rb +1 -0
- data/lib/nokogiri/xml/pp/character_data.rb +1 -0
- data/lib/nokogiri/xml/pp/node.rb +1 -0
- data/lib/nokogiri/xml/processing_instruction.rb +1 -0
- data/lib/nokogiri/xml/reader.rb +7 -3
- data/lib/nokogiri/xml/relax_ng.rb +7 -2
- data/lib/nokogiri/xml/sax.rb +1 -0
- data/lib/nokogiri/xml/sax/document.rb +1 -0
- data/lib/nokogiri/xml/sax/parser.rb +1 -0
- data/lib/nokogiri/xml/sax/parser_context.rb +1 -0
- data/lib/nokogiri/xml/sax/push_parser.rb +1 -0
- data/lib/nokogiri/xml/schema.rb +13 -4
- data/lib/nokogiri/xml/searchable.rb +25 -16
- data/lib/nokogiri/xml/syntax_error.rb +1 -0
- data/lib/nokogiri/xml/text.rb +1 -0
- data/lib/nokogiri/xml/xpath.rb +1 -0
- data/lib/nokogiri/xml/xpath/syntax_error.rb +1 -0
- data/lib/nokogiri/xml/xpath_context.rb +1 -0
- data/lib/nokogiri/xslt.rb +1 -0
- data/lib/nokogiri/xslt/stylesheet.rb +1 -0
- data/lib/xsd/xmlparser/nokogiri.rb +1 -0
- metadata +86 -159
- data/ext/java/nokogiri/internals/NokogiriEncodingReaderWrapper.java +0 -107
- data/ext/java/nokogiri/internals/UncloseableInputStream.java +0 -102
- data/ext/nokogiri/html_document.h +0 -10
- data/ext/nokogiri/html_element_description.h +0 -10
- data/ext/nokogiri/html_entity_lookup.h +0 -8
- data/ext/nokogiri/html_sax_parser_context.h +0 -11
- data/ext/nokogiri/html_sax_push_parser.h +0 -9
- data/ext/nokogiri/nokogiri.h +0 -121
- data/ext/nokogiri/xml_attr.h +0 -9
- data/ext/nokogiri/xml_attribute_decl.h +0 -9
- data/ext/nokogiri/xml_cdata.h +0 -9
- data/ext/nokogiri/xml_comment.h +0 -9
- data/ext/nokogiri/xml_document.h +0 -23
- data/ext/nokogiri/xml_document_fragment.h +0 -10
- data/ext/nokogiri/xml_dtd.h +0 -10
- data/ext/nokogiri/xml_element_content.h +0 -10
- data/ext/nokogiri/xml_element_decl.h +0 -9
- data/ext/nokogiri/xml_encoding_handler.h +0 -8
- data/ext/nokogiri/xml_entity_decl.h +0 -10
- data/ext/nokogiri/xml_entity_reference.h +0 -9
- data/ext/nokogiri/xml_io.h +0 -11
- data/ext/nokogiri/xml_libxml2_hacks.h +0 -12
- data/ext/nokogiri/xml_namespace.h +0 -14
- data/ext/nokogiri/xml_node.h +0 -13
- data/ext/nokogiri/xml_node_set.h +0 -12
- data/ext/nokogiri/xml_processing_instruction.h +0 -9
- data/ext/nokogiri/xml_reader.h +0 -10
- data/ext/nokogiri/xml_relax_ng.h +0 -9
- data/ext/nokogiri/xml_sax_parser.h +0 -39
- data/ext/nokogiri/xml_sax_parser_context.h +0 -10
- data/ext/nokogiri/xml_sax_push_parser.h +0 -9
- data/ext/nokogiri/xml_schema.h +0 -9
- data/ext/nokogiri/xml_syntax_error.h +0 -13
- data/ext/nokogiri/xml_text.h +0 -9
- data/ext/nokogiri/xml_xpath_context.h +0 -10
- data/ext/nokogiri/xslt_stylesheet.h +0 -14
@@ -1,107 +0,0 @@
|
|
1
|
-
package nokogiri.internals;
|
2
|
-
|
3
|
-
import java.io.InputStream;
|
4
|
-
|
5
|
-
import org.jruby.Ruby;
|
6
|
-
import org.jruby.RubyObject;
|
7
|
-
import org.jruby.exceptions.RaiseException;
|
8
|
-
import org.jruby.runtime.Helpers;
|
9
|
-
import org.jruby.runtime.ThreadContext;
|
10
|
-
import org.jruby.runtime.builtin.IRubyObject;
|
11
|
-
import org.jruby.util.ByteList;
|
12
|
-
|
13
|
-
/**
|
14
|
-
* This class wraps the EncodingReader which act like a rewinding input stream,
|
15
|
-
* it tries to read the first 1K of data to detect the encoding, but save
|
16
|
-
* this data in a buffer for the subsequent read. Unfortunately, the EncodingReader
|
17
|
-
* will behave as expected only if encoding was detected, otherwise, the read data
|
18
|
-
* won't be stored and EncodingReader will fallback to read directory from the io stream.
|
19
|
-
* this is kind of lame, since we need to have similar logic in both layers. The alternative
|
20
|
-
* is to implement the encoding detection similar to the way C-Nokogiri does it; it starts
|
21
|
-
* parsing assuming encoding is unknown and if encoding is detected it will throw an exception
|
22
|
-
* causing parsing to stop, in which case we have to intercept the exception and set the encoding.
|
23
|
-
* Also in this case we don't have to restart the parsing since html/document.rb does that for us.
|
24
|
-
*
|
25
|
-
* @author John Shahid <jvshahid@gmail.com>
|
26
|
-
*
|
27
|
-
*/
|
28
|
-
public class NokogiriEncodingReaderWrapper extends InputStream {
|
29
|
-
private final ThreadContext context;
|
30
|
-
private final IRubyObject encodingReader;
|
31
|
-
private final Ruby ruby;
|
32
|
-
private IRubyObject detectedEncoding;
|
33
|
-
private final byte[] firstChunk = new byte[1024];
|
34
|
-
private int firstChunkOff = 0;
|
35
|
-
private int firstChunkLength = 0;
|
36
|
-
|
37
|
-
public NokogiriEncodingReaderWrapper(ThreadContext context, RubyObject encodingReader) {
|
38
|
-
this.context = context;
|
39
|
-
this.encodingReader = encodingReader;
|
40
|
-
this.ruby = context.getRuntime();
|
41
|
-
|
42
|
-
if (!Helpers.invoke(context, encodingReader, "respond_to?", ruby.newSymbol("read")).isTrue()
|
43
|
-
|| encodingReader.getInstanceVariable("@io") == null) {
|
44
|
-
throw ruby.newArgumentError("Argument doesn't respond to read or doesn't have instance variable @io");
|
45
|
-
}
|
46
|
-
}
|
47
|
-
|
48
|
-
public boolean detectEncoding() {
|
49
|
-
try {
|
50
|
-
firstChunkLength = read(firstChunk);
|
51
|
-
} catch (RaiseException e) {
|
52
|
-
detectedEncoding = e.getException().getInstanceVariable("@found_encoding");
|
53
|
-
return true;
|
54
|
-
}
|
55
|
-
detectedEncoding = context.nil;
|
56
|
-
return false;
|
57
|
-
}
|
58
|
-
|
59
|
-
public IRubyObject getEncoding() {
|
60
|
-
return detectedEncoding;
|
61
|
-
}
|
62
|
-
|
63
|
-
@Override
|
64
|
-
public int read(byte b[]) {
|
65
|
-
return read(b, 0, b.length);
|
66
|
-
}
|
67
|
-
|
68
|
-
@Override
|
69
|
-
public int read(byte b[], int off, int len) {
|
70
|
-
if (b == null) {
|
71
|
-
throw new NullPointerException();
|
72
|
-
} else if (off < 0 || len < 0 || len > b.length - off) {
|
73
|
-
throw new IndexOutOfBoundsException();
|
74
|
-
} else if (len == 0) {
|
75
|
-
return 0;
|
76
|
-
}
|
77
|
-
|
78
|
-
int copyLength = Math.min(firstChunkLength - firstChunkOff, len);
|
79
|
-
if (copyLength > 0) {
|
80
|
-
System.arraycopy(firstChunk, firstChunkOff, b, off, copyLength);
|
81
|
-
len -= copyLength;
|
82
|
-
firstChunkOff += copyLength;
|
83
|
-
}
|
84
|
-
|
85
|
-
if (len <= 0)
|
86
|
-
return copyLength;
|
87
|
-
|
88
|
-
IRubyObject returnValue = encodingReader.callMethod(context, "read", ruby.newFixnum(len));
|
89
|
-
if (returnValue.isNil())
|
90
|
-
return -1;
|
91
|
-
|
92
|
-
ByteList bytes = returnValue.asString().getByteList();
|
93
|
-
int length = bytes.length();
|
94
|
-
System.arraycopy(bytes.unsafeBytes(), bytes.getBegin(), b, off + copyLength, length);
|
95
|
-
return length + copyLength;
|
96
|
-
}
|
97
|
-
|
98
|
-
@Override
|
99
|
-
public int read() {
|
100
|
-
byte[] bytes = new byte[1];
|
101
|
-
int count = read(bytes, 0, 1);
|
102
|
-
if (count < 1)
|
103
|
-
return count;
|
104
|
-
return bytes[0];
|
105
|
-
}
|
106
|
-
|
107
|
-
}
|
@@ -1,102 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* (The MIT License)
|
3
|
-
*
|
4
|
-
* Copyright (c) 2008 - 2012:
|
5
|
-
*
|
6
|
-
* * {Aaron Patterson}[http://tenderlovemaking.com]
|
7
|
-
* * {Mike Dalessio}[http://mike.daless.io]
|
8
|
-
* * {Charles Nutter}[http://blog.headius.com]
|
9
|
-
* * {Sergio Arbeo}[http://www.serabe.com]
|
10
|
-
* * {Patrick Mahoney}[http://polycrystal.org]
|
11
|
-
* * {Yoko Harada}[http://yokolet.blogspot.com]
|
12
|
-
*
|
13
|
-
* Permission is hereby granted, free of charge, to any person obtaining
|
14
|
-
* a copy of this software and associated documentation files (the
|
15
|
-
* 'Software'), to deal in the Software without restriction, including
|
16
|
-
* without limitation the rights to use, copy, modify, merge, publish,
|
17
|
-
* distribute, sublicense, and/or sell copies of the Software, and to
|
18
|
-
* permit persons to whom the Software is furnished to do so, subject to
|
19
|
-
* the following conditions:
|
20
|
-
*
|
21
|
-
* The above copyright notice and this permission notice shall be
|
22
|
-
* included in all copies or substantial portions of the Software.
|
23
|
-
*
|
24
|
-
* THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
25
|
-
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
26
|
-
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
27
|
-
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
28
|
-
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
29
|
-
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
30
|
-
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
31
|
-
*/
|
32
|
-
|
33
|
-
package nokogiri.internals;
|
34
|
-
|
35
|
-
import java.io.IOException;
|
36
|
-
import java.io.InputStream;
|
37
|
-
|
38
|
-
/**
|
39
|
-
* Delegates all the methods to another InputStream except the
|
40
|
-
* close() method, which is ignored. This is used to fix #495.
|
41
|
-
*
|
42
|
-
* @author John Shahid <jvshahid@gmail.com>
|
43
|
-
*/
|
44
|
-
public class UncloseableInputStream extends InputStream {
|
45
|
-
private final InputStream delegate;
|
46
|
-
|
47
|
-
/**
|
48
|
-
* Create a new uncloseable stream.
|
49
|
-
*
|
50
|
-
* @param delegate The InputStream to which all methods (except close)
|
51
|
-
* will be delegated.
|
52
|
-
*/
|
53
|
-
public UncloseableInputStream(InputStream delegate) {
|
54
|
-
this.delegate = delegate;
|
55
|
-
}
|
56
|
-
|
57
|
-
@Override
|
58
|
-
public int read() throws IOException {
|
59
|
-
return delegate.read();
|
60
|
-
}
|
61
|
-
|
62
|
-
@Override
|
63
|
-
public int read(byte []b) throws IOException {
|
64
|
-
return delegate.read(b);
|
65
|
-
}
|
66
|
-
|
67
|
-
@Override
|
68
|
-
public int read(byte []b, int offset, int len) throws IOException {
|
69
|
-
return delegate.read(b, offset, len);
|
70
|
-
}
|
71
|
-
|
72
|
-
@Override
|
73
|
-
public long skip(long n) throws IOException {
|
74
|
-
return delegate.skip(n);
|
75
|
-
}
|
76
|
-
|
77
|
-
@Override
|
78
|
-
public int available() throws IOException {
|
79
|
-
return delegate.available();
|
80
|
-
}
|
81
|
-
|
82
|
-
@Override
|
83
|
-
public void close() {
|
84
|
-
// don't forward this to the InputStream we're delegating from
|
85
|
-
// we don't want the InputStream of the RubyIO to be closed
|
86
|
-
}
|
87
|
-
|
88
|
-
@Override
|
89
|
-
public void mark(int readlimit) {
|
90
|
-
delegate.mark(readlimit);
|
91
|
-
}
|
92
|
-
|
93
|
-
@Override
|
94
|
-
public void reset() throws IOException {
|
95
|
-
delegate.reset();
|
96
|
-
}
|
97
|
-
|
98
|
-
@Override
|
99
|
-
public boolean markSupported() {
|
100
|
-
return delegate.markSupported();
|
101
|
-
}
|
102
|
-
}
|
data/ext/nokogiri/nokogiri.h
DELETED
@@ -1,121 +0,0 @@
|
|
1
|
-
#ifndef NOKOGIRI_NATIVE
|
2
|
-
#define NOKOGIRI_NATIVE
|
3
|
-
|
4
|
-
#include <stdlib.h>
|
5
|
-
#include <string.h>
|
6
|
-
#include <assert.h>
|
7
|
-
#include <stdarg.h>
|
8
|
-
|
9
|
-
#ifdef USE_INCLUDED_VASPRINTF
|
10
|
-
int vasprintf (char **strp, const char *fmt, va_list ap);
|
11
|
-
#else
|
12
|
-
|
13
|
-
#define _GNU_SOURCE
|
14
|
-
# include <stdio.h>
|
15
|
-
#undef _GNU_SOURCE
|
16
|
-
|
17
|
-
#endif
|
18
|
-
|
19
|
-
#include <libxml/parser.h>
|
20
|
-
#include <libxml/entities.h>
|
21
|
-
#include <libxml/parserInternals.h>
|
22
|
-
#include <libxml/xpath.h>
|
23
|
-
#include <libxml/xpathInternals.h>
|
24
|
-
#include <libxml/xmlreader.h>
|
25
|
-
#include <libxml/xmlsave.h>
|
26
|
-
#include <libxml/xmlschemas.h>
|
27
|
-
#include <libxml/HTMLparser.h>
|
28
|
-
#include <libxml/HTMLtree.h>
|
29
|
-
#include <libxml/relaxng.h>
|
30
|
-
#include <libxml/xinclude.h>
|
31
|
-
#include <libxslt/extensions.h>
|
32
|
-
#include <libxml/c14n.h>
|
33
|
-
#include <ruby.h>
|
34
|
-
#include <ruby/st.h>
|
35
|
-
#include <ruby/encoding.h>
|
36
|
-
|
37
|
-
#ifndef NORETURN
|
38
|
-
# if defined(__GNUC__)
|
39
|
-
# define NORETURN(name) __attribute__((noreturn)) name
|
40
|
-
# else
|
41
|
-
# define NORETURN(name) name
|
42
|
-
# endif
|
43
|
-
#endif
|
44
|
-
|
45
|
-
#define NOKOGIRI_STR_NEW2(str) \
|
46
|
-
NOKOGIRI_STR_NEW(str, strlen((const char *)(str)))
|
47
|
-
|
48
|
-
#define NOKOGIRI_STR_NEW(str, len) \
|
49
|
-
rb_external_str_new_with_enc((const char *)(str), (long)(len), rb_utf8_encoding())
|
50
|
-
|
51
|
-
#define RBSTR_OR_QNIL(_str) \
|
52
|
-
(_str ? NOKOGIRI_STR_NEW2(_str) : Qnil)
|
53
|
-
|
54
|
-
#include <xml_libxml2_hacks.h>
|
55
|
-
|
56
|
-
#include <xml_io.h>
|
57
|
-
#include <xml_document.h>
|
58
|
-
#include <html_entity_lookup.h>
|
59
|
-
#include <html_document.h>
|
60
|
-
#include <xml_node.h>
|
61
|
-
#include <xml_text.h>
|
62
|
-
#include <xml_cdata.h>
|
63
|
-
#include <xml_attr.h>
|
64
|
-
#include <xml_processing_instruction.h>
|
65
|
-
#include <xml_entity_reference.h>
|
66
|
-
#include <xml_document_fragment.h>
|
67
|
-
#include <xml_comment.h>
|
68
|
-
#include <xml_node_set.h>
|
69
|
-
#include <xml_dtd.h>
|
70
|
-
#include <xml_attribute_decl.h>
|
71
|
-
#include <xml_element_decl.h>
|
72
|
-
#include <xml_entity_decl.h>
|
73
|
-
#include <xml_xpath_context.h>
|
74
|
-
#include <xml_element_content.h>
|
75
|
-
#include <xml_sax_parser_context.h>
|
76
|
-
#include <xml_sax_parser.h>
|
77
|
-
#include <xml_sax_push_parser.h>
|
78
|
-
#include <xml_reader.h>
|
79
|
-
#include <html_sax_parser_context.h>
|
80
|
-
#include <html_sax_push_parser.h>
|
81
|
-
#include <xslt_stylesheet.h>
|
82
|
-
#include <xml_syntax_error.h>
|
83
|
-
#include <xml_schema.h>
|
84
|
-
#include <xml_relax_ng.h>
|
85
|
-
#include <html_element_description.h>
|
86
|
-
#include <xml_namespace.h>
|
87
|
-
#include <xml_encoding_handler.h>
|
88
|
-
|
89
|
-
extern VALUE mNokogiri ;
|
90
|
-
extern VALUE mNokogiriXml ;
|
91
|
-
extern VALUE mNokogiriXmlSax ;
|
92
|
-
extern VALUE mNokogiriHtml ;
|
93
|
-
extern VALUE mNokogiriHtmlSax ;
|
94
|
-
extern VALUE mNokogiriXslt ;
|
95
|
-
|
96
|
-
void nokogiri_root_node(xmlNodePtr);
|
97
|
-
void nokogiri_root_nsdef(xmlNsPtr, xmlDocPtr);
|
98
|
-
|
99
|
-
#ifdef DEBUG
|
100
|
-
|
101
|
-
#define NOKOGIRI_DEBUG_START(p) if (getenv("NOKOGIRI_NO_FREE")) return ; if (getenv("NOKOGIRI_DEBUG")) fprintf(stderr,"nokogiri: %s:%d %p start\n", __FILE__, __LINE__, p);
|
102
|
-
#define NOKOGIRI_DEBUG_END(p) if (getenv("NOKOGIRI_DEBUG")) fprintf(stderr,"nokogiri: %s:%d %p end\n", __FILE__, __LINE__, p);
|
103
|
-
|
104
|
-
#else
|
105
|
-
|
106
|
-
#define NOKOGIRI_DEBUG_START(p)
|
107
|
-
#define NOKOGIRI_DEBUG_END(p)
|
108
|
-
|
109
|
-
#endif
|
110
|
-
|
111
|
-
#ifndef __builtin_expect
|
112
|
-
# if defined(__GNUC__)
|
113
|
-
# define __builtin_expect(expr, c) __builtin_expect((long)(expr), (long)(c))
|
114
|
-
# endif
|
115
|
-
#endif
|
116
|
-
|
117
|
-
#define XMLNS_PREFIX "xmlns"
|
118
|
-
#define XMLNS_PREFIX_LEN 6 /* including either colon or \0 */
|
119
|
-
#define XMLNS_BUFFER_LEN 128
|
120
|
-
|
121
|
-
#endif
|
data/ext/nokogiri/xml_attr.h
DELETED
data/ext/nokogiri/xml_cdata.h
DELETED
data/ext/nokogiri/xml_comment.h
DELETED
data/ext/nokogiri/xml_document.h
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
#ifndef NOKOGIRI_XML_DOCUMENT
|
2
|
-
#define NOKOGIRI_XML_DOCUMENT
|
3
|
-
|
4
|
-
#include <nokogiri.h>
|
5
|
-
|
6
|
-
struct _nokogiriTuple {
|
7
|
-
VALUE doc;
|
8
|
-
st_table *unlinkedNodes;
|
9
|
-
VALUE node_cache;
|
10
|
-
};
|
11
|
-
typedef struct _nokogiriTuple nokogiriTuple;
|
12
|
-
typedef nokogiriTuple * nokogiriTuplePtr;
|
13
|
-
|
14
|
-
void init_xml_document();
|
15
|
-
VALUE Nokogiri_wrap_xml_document(VALUE klass, xmlDocPtr doc);
|
16
|
-
|
17
|
-
#define DOC_RUBY_OBJECT_TEST(x) ((nokogiriTuplePtr)(x->_private))
|
18
|
-
#define DOC_RUBY_OBJECT(x) (((nokogiriTuplePtr)(x->_private))->doc)
|
19
|
-
#define DOC_UNLINKED_NODE_HASH(x) (((nokogiriTuplePtr)(x->_private))->unlinkedNodes)
|
20
|
-
#define DOC_NODE_CACHE(x) (((nokogiriTuplePtr)(x->_private))->node_cache)
|
21
|
-
|
22
|
-
extern VALUE cNokogiriXmlDocument ;
|
23
|
-
#endif
|