Module: Dommy::NodeFilter

Defined in:
lib/dommy/tree_walker.rb

Overview

NodeFilter constants — bitmasks for ‘whatToShow` and return values for the optional filter callable. Standard DOM Level 2 Traversal.

Constant Summary collapse

SHOW_ALL =
0xFFFFFFFF
SHOW_ELEMENT =
0x1
SHOW_ATTRIBUTE =
0x2
SHOW_TEXT =
0x4
SHOW_CDATA_SECTION =
0x8
SHOW_PROCESSING_INSTRUCTION =
0x40
SHOW_COMMENT =
0x80
SHOW_DOCUMENT =
0x100
SHOW_DOCUMENT_TYPE =
0x200
SHOW_DOCUMENT_FRAGMENT =
0x400
FILTER_ACCEPT =
1
FILTER_REJECT =
2
FILTER_SKIP =
3

Class Method Summary collapse

Class Method Details

.bitmask_for(node) ⇒ Object

Map a wrapped Dommy node to its NodeFilter bitmask. Returns 0 for unknown node types (effectively “doesn’t pass any filter”).



24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/dommy/tree_walker.rb', line 24

def self.bitmask_for(node)
  case node
  when Element
    SHOW_ELEMENT
  when TextNode
    SHOW_TEXT
  when CommentNode
    SHOW_COMMENT
  when Fragment
    SHOW_DOCUMENT_FRAGMENT
  when Document
    SHOW_DOCUMENT
  when DocumentType
    SHOW_DOCUMENT_TYPE
  else
    0
  end
end