Class: Nokogiri::XML::CDATA
- Inherits:
-
Text
- Object
- NokogiriXmlNode
- CharacterData
- Text
- Nokogiri::XML::CDATA
- Defined in:
- lib/nokogiri/xml/cdata.rb,
ext/nokogiri/xml_cdata.c
Class Method Summary collapse
-
.new(document, content) ⇒ Object
Create a new CDATA element on the
document
withcontent
.
Instance Method Summary collapse
-
#name ⇒ Object
Get the name of this CDATA node.
Methods inherited from Text
Methods included from PP::CharacterData
Class Method Details
.new(document, content) ⇒ Object
Create a new CDATA element on the document
with content
If content
cannot be implicitly converted to a string, this method will raise a TypeError exception.
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'ext/nokogiri/xml_cdata.c', line 14
static VALUE
new (int argc, VALUE *argv, VALUE klass)
{
xmlDocPtr xml_doc;
xmlNodePtr node;
VALUE doc;
VALUE content;
VALUE rest;
VALUE rb_node;
xmlChar *content_str = NULL;
int content_str_len = 0;
rb_scan_args(argc, argv, "2*", &doc, &content, &rest);
Noko_Node_Get_Struct(doc, xmlDoc, xml_doc);
if (!NIL_P(content)) {
content_str = (xmlChar *)StringValuePtr(content);
content_str_len = RSTRING_LEN(content);
}
node = xmlNewCDataBlock(xml_doc->doc, content_str, content_str_len);
noko_xml_document_pin_node(node);
rb_node = noko_xml_node_wrap(klass, node);
rb_obj_call_init(rb_node, argc, argv);
if (rb_block_given_p()) { rb_yield(rb_node); }
return rb_node;
}
|
Instance Method Details
#name ⇒ Object
Get the name of this CDATA node
8 9 10 |
# File 'lib/nokogiri/xml/cdata.rb', line 8 def name "#cdata-section" end |