W3cubDocs

/Nokogiri

class Nokogiri::HTML::ElementDescription

Parent:
Object

Constants

ACTION_ATTR
ALIGN_ATTR
ALT_ATTR
APPLET_ATTRS
AREA_ATTRS
ATTRS
A_ATTRS
BASEFONT_ATTRS
BGCOLOR_ATTR
BLOCK
BLOCKLI_ELT
BODY_ATTRS
BODY_CONTENTS
BODY_DEPR
BUTTON_ATTRS
CELLHALIGN
CELLVALIGN
CLEAR_ATTRS
COL_ATTRS
COL_ELT
COMPACT_ATTR
COMPACT_ATTRS
CONTENT_ATTR
COREATTRS
CORE_ATTRS
CORE_I18N_ATTRS
DIR_ATTR
DL_CONTENTS
DefaultDescriptions

This is filled in down below.

Desc

Methods are defined protected by method_defined? because at this point the C-library or Java library is already loaded, and we don't want to clobber any methods that have been defined there.

EDIT_ATTRS
EMBED_ATTRS
EMPTY
EVENTS
FIELDSET_CONTENTS
FLOW
FLOW_PARAM
FONTSTYLE

Attributes defined and categorized

FONT_ATTRS
FORMCTRL
FORM_ATTRS
FORM_CONTENTS
FRAMESET_ATTRS
FRAMESET_CONTENTS
FRAME_ATTRS
HEADING
HEAD_ATTRS
HEAD_CONTENTS
HREF_ATTRS
HR_DEPR
HTML_ATTRS
HTML_CDATA
HTML_CONTENT
HTML_FLOW
HTML_INLINE
HTML_PCDATA
I18N
I18N_ATTRS
IFRAME_ATTRS
IMG_ATTRS
INLINE
INLINE_P
INPUT_ATTRS
LABEL_ATTR
LABEL_ATTRS
LANGUAGE_ATTR
LEGEND_ATTRS
LIST
LI_ELT
MAP_CONTENTS
META_ATTRS
MODIFIER
NAME_ATTR
NOFRAMES_CONTENT
OBJECT_ATTRS
OBJECT_CONTENTS
OBJECT_DEPR
OL_ATTRS
OPTGROUP_ATTRS
OPTION_ATTRS
OPTION_ELT
PARAM_ATTRS
PCDATA
PHRASE
PRE_CONTENT
PROMPT_ATTRS
QUOTE_ATTRS
ROWS_COLS_ATTR
SCRIPT_ATTRS
SELECT_ATTRS
SELECT_CONTENT
SPECIAL
SRC_ALT_ATTRS
STYLE_ATTRS
TABLE_ATTRS
TABLE_CONTENTS
TABLE_DEPR
TALIGN_ATTRS
TARGET_ATTR
TEXTAREA_ATTRS
TH_TD_ATTR
TH_TD_DEPR
TR_CONTENTS
TR_ELT
TYPE_ATTR
UL_DEPR
VERSION_ATTR
WIDTH_ATTR

Public Class Methods

[](tag_name) Show source
static VALUE get_description(VALUE klass, VALUE tag_name)
{
  const htmlElemDesc * description = htmlTagLookup(
      (const xmlChar *)StringValueCStr(tag_name)
  );

  if(NULL == description) return Qnil;
  return Data_Wrap_Struct(klass, 0, 0, (void *)(uintptr_t)description);
}

Get ElemementDescription for tag_name

Public Instance Methods

block?() Show source
# File lib/nokogiri/html/element_description.rb, line 6
def block?
  !inline?
end

Is this element a block element?

default_sub_element Show source
static VALUE default_sub_element(VALUE self)
{
  const htmlElemDesc * description;
  Data_Get_Struct(self, htmlElemDesc, description);

  if (description->defaultsubelt)
    return NOKOGIRI_STR_NEW2(description->defaultsubelt);

  return Qnil;
}

The default sub element for this element

deprecated? Show source
static VALUE deprecated_eh(VALUE self)
{
  const htmlElemDesc * description;
  Data_Get_Struct(self, htmlElemDesc, description);

  if(description->depr) return Qtrue;
  return Qfalse;
}

Is this element deprecated?

deprecated_attributes Show source
static VALUE deprecated_attributes(VALUE self)
{
  const htmlElemDesc * description;
  VALUE list;
  int i;

  Data_Get_Struct(self, htmlElemDesc, description);

  list = rb_ary_new();

  if(NULL == description->attrs_depr) return list;

  for(i = 0; description->attrs_depr[i]; i++) {
    rb_ary_push(list, NOKOGIRI_STR_NEW2(description->attrs_depr[i]));
  }

  return list;
}

A list of deprecated attributes for this element

description Show source
static VALUE description(VALUE self)
{
  const htmlElemDesc * description;
  Data_Get_Struct(self, htmlElemDesc, description);

  return NOKOGIRI_STR_NEW2(description->desc);
}

The description for this element

empty? Show source
static VALUE empty_eh(VALUE self)
{
  const htmlElemDesc * description;
  Data_Get_Struct(self, htmlElemDesc, description);

  if(description->empty) return Qtrue;
  return Qfalse;
}

Is this an empty element?

implied_end_tag? Show source
static VALUE implied_end_tag_eh(VALUE self)
{
  const htmlElemDesc * description;
  Data_Get_Struct(self, htmlElemDesc, description);

  if(description->endTag) return Qtrue;
  return Qfalse;
}

Can the end tag be implied for this tag?

implied_start_tag? Show source
static VALUE implied_start_tag_eh(VALUE self)
{
  const htmlElemDesc * description;
  Data_Get_Struct(self, htmlElemDesc, description);

  if(description->startTag) return Qtrue;
  return Qfalse;
}

Can the start tag be implied for this tag?

inline? Show source
static VALUE inline_eh(VALUE self)
{
  const htmlElemDesc * description;
  Data_Get_Struct(self, htmlElemDesc, description);

  if(description->isinline) return Qtrue;
  return Qfalse;
}

Is this element an inline element?

inspect() Show source
# File lib/nokogiri/html/element_description.rb, line 18
def inspect
  "#<#{self.class.name}: #{name} #{description}>"
end

Inspection information

static VALUE name(VALUE self)
{
  const htmlElemDesc * description;
  Data_Get_Struct(self, htmlElemDesc, description);

  if(NULL == description->name) return Qnil;
  return NOKOGIRI_STR_NEW2(description->name);
}

Get the tag name for this ElemementDescription

optional_attributes Show source
static VALUE optional_attributes(VALUE self)
{
  const htmlElemDesc * description;
  VALUE list;
  int i;

  Data_Get_Struct(self, htmlElemDesc, description);

  list = rb_ary_new();

  if(NULL == description->attrs_opt) return list;

  for(i = 0; description->attrs_opt[i]; i++) {
    rb_ary_push(list, NOKOGIRI_STR_NEW2(description->attrs_opt[i]));
  }

  return list;
}

A list of optional attributes for this element

required_attributes Show source
static VALUE required_attributes(VALUE self)
{
  const htmlElemDesc * description;
  VALUE list;
  int i;

  Data_Get_Struct(self, htmlElemDesc, description);

  list = rb_ary_new();

  if(NULL == description->attrs_req) return list;

  for(i = 0; description->attrs_depr[i]; i++) {
    rb_ary_push(list, NOKOGIRI_STR_NEW2(description->attrs_req[i]));
  }

  return list;
}

A list of required attributes for this element

save_end_tag? Show source
static VALUE save_end_tag_eh(VALUE self)
{
  const htmlElemDesc * description;
  Data_Get_Struct(self, htmlElemDesc, description);

  if(description->saveEndTag) return Qtrue;
  return Qfalse;
}

Should the end tag be saved?

sub_elements Show source
static VALUE sub_elements(VALUE self)
{
  const htmlElemDesc * description;
  VALUE list;
  int i;

  Data_Get_Struct(self, htmlElemDesc, description);

  list = rb_ary_new();

  if(NULL == description->subelts) return list;

  for(i = 0; description->subelts[i]; i++) {
    rb_ary_push(list, NOKOGIRI_STR_NEW2(description->subelts[i]));
  }

  return list;
}

A list of allowed sub elements for this element.

to_s() Show source
# File lib/nokogiri/html/element_description.rb, line 12
def to_s
  "#{name}: #{description}"
end

Convert this description to a string

© 2008–2018 Aaron Patterson, Mike Dalessio, Charles Nutter, Sergio Arbeo,
Patrick Mahoney, Yoko Harada, Akinori MUSHA, John Shahid, Lars Kanis
Licensed under the MIT License.