vcdom 0.3.1 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/vcdom.rb ADDED
@@ -0,0 +1,29 @@
1
+ # coding : utf-8
2
+
3
+ require "vcdom/document"
4
+
5
+ # This Module object can be used as {the DOMImplementation object of W3C DOM Core}[http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-102161490].
6
+ module VCDOM
7
+
8
+ # boolean hasFeature(in DOMString feature,
9
+ # in DOMString version);
10
+
11
+ # DocumentType createDocumentType(in DOMString qualifiedName,
12
+ # in DOMString publicId,
13
+ # in DOMString systemId)
14
+ # raises(DOMException);
15
+
16
+ # Creates a DOM Document object with its document element.
17
+ # Now, the vcdom library doesn't support a XML Doctype, so the third argument +doctype+ has no effect.
18
+ # @return [Document]
19
+ def self.create_document( namespace_uri, qualified_name, doctype = nil )
20
+ doc = Document._new()
21
+ doc << doc.create_element_ns( namespace_uri, qualified_name )
22
+ end
23
+
24
+ # // Introduced in DOM Level 3:
25
+ # DOMObject getFeature(in DOMString feature,
26
+ # in DOMString version);
27
+ # };
28
+
29
+ end
data/lib/vcdom/element.rb CHANGED
@@ -36,7 +36,7 @@ module VCDOM
36
36
  def append_child( new_child )
37
37
  # ノードのタイプチェックなど
38
38
  if not new_child.is_a? Node then
39
- raise ArgumentError.new( "the argument [#{new_child.inspect}] is not an object of the expected class." )
39
+ raise ArgumentError.new( "the argument [#{new_child}] is not an object of the expected class." )
40
40
  end
41
41
  # Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference
42
42
  case new_child.node_type
@@ -4,41 +4,44 @@ require "vcdom/node"
4
4
  require "vcdom/element"
5
5
 
6
6
  module VCDOM
7
- class ElementNS < Element
8
-
9
- def initialize( doc, namespace_uri, prefix, local_name )
10
- super( doc, local_name )
11
- @namespace_uri = namespace_uri
12
- @prefix = prefix
13
- end
14
-
15
- def node_type
16
- ELEMENT_NODE
17
- end
18
-
19
- def tag_name
20
- if @prefix then
21
- "#{@prefix.to_s}:#{@local_name.to_s}"
22
- else
23
- @local_name.to_s()
24
- end
25
- end
26
- alias :node_name :tag_name
27
-
28
- def prefix
29
- @prefix.nil? ? nil : @prefix.to_s()
30
- end
31
- def local_name
7
+
8
+ # This class implements {the interface Element of W3C DOM Element}[http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-745549614].
9
+ # This class (ElementNS) supports a namespace URI, and the class Element doesn't support a namespace URI.
10
+ class ElementNS < Element
11
+
12
+ def initialize( doc, namespace_uri, prefix, local_name ) # :nodoc:
13
+ super( doc, local_name )
14
+ @namespace_uri = namespace_uri
15
+ @prefix = prefix
16
+ end
17
+
18
+ def node_type
19
+ ELEMENT_NODE
20
+ end
21
+
22
+ def tag_name
23
+ if @prefix then
24
+ "#{@prefix.to_s}:#{@local_name.to_s}"
25
+ else
32
26
  @local_name.to_s()
33
27
  end
34
- def namespace_uri
35
- @namespace_uri.nil? ? nil : @namespace_uri.to_s()
36
- end
37
-
38
- def append_child( new_child )
39
- # �m�[�h�̃^�C�v�`�F�b�N�Ȃ�
40
- _append_child( new_child )
41
- end
42
-
43
28
  end
29
+ alias :node_name :tag_name
30
+
31
+ def prefix
32
+ @prefix.nil? ? nil : @prefix.to_s()
33
+ end
34
+ def local_name
35
+ @local_name.to_s()
36
+ end
37
+ def namespace_uri
38
+ @namespace_uri.nil? ? nil : @namespace_uri.to_s()
39
+ end
40
+
41
+ #def append_child( new_child )
42
+ # _append_child( new_child )
43
+ #end
44
+
45
+ end
46
+
44
47
  end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 3
8
- - 1
9
- version: 0.3.1
8
+ - 2
9
+ version: 0.3.2
10
10
  platform: ruby
11
11
  authors:
12
12
  - nobuoka
@@ -14,11 +14,11 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2011-01-03 00:00:00 +09:00
17
+ date: 2011-01-04 00:00:00 +09:00
18
18
  default_executable:
19
19
  dependencies: []
20
20
 
21
- description: This gem is a one of implementations of W3C DOM.
21
+ description:
22
22
  email: nobuoka@r-definition.com
23
23
  executables: []
24
24
 
@@ -27,6 +27,7 @@ extensions: []
27
27
  extra_rdoc_files:
28
28
  - README.rdoc
29
29
  files:
30
+ - README.rdoc
30
31
  - lib/vcdom/attr.rb
31
32
  - lib/vcdom/attr_node_map.rb
32
33
  - lib/vcdom/attr_ns.rb
@@ -42,7 +43,6 @@ files:
42
43
  - lib/vcdom/xml_ls/xml_parser.rb
43
44
  - lib/vcdom/xml_ls/xml_serializer.rb
44
45
  - lib/vcdom/xml_ls.rb
45
- - lib/vcdom/xpath/evaluative.rb.old
46
46
  - lib/vcdom/xpath/internal/command.rb
47
47
  - lib/vcdom/xpath/internal/evaluator.rb
48
48
  - lib/vcdom/xpath/internal/expr.rb
@@ -54,12 +54,12 @@ files:
54
54
  - lib/vcdom/xpath/xpath_ns_resolver.rb
55
55
  - lib/vcdom/xpath/xpath_result.rb
56
56
  - lib/vcdom/xpath.rb
57
+ - lib/vcdom.rb
57
58
  - test/main_test_1.8.rb.old
58
59
  - test/main_test_1.9.rb.old
59
60
  - test/test_main.rb
60
61
  - test/test_parsing.rb
61
62
  - test/test_xpath.rb
62
- - README.rdoc
63
63
  has_rdoc: true
64
64
  homepage:
65
65
  licenses: []
@@ -1,73 +0,0 @@
1
- # coding : utf-8
2
-
3
- module VCDOM
4
- module XPath
5
-
6
- module Evaluative
7
-
8
- def create_expression( expression, resolver )
9
- end
10
-
11
- def create_ns_resolver( node_resolver )
12
- end
13
-
14
- def evaluate( expression, context_node, resolver, type, result )
15
- self.create_expression( expression, resolver ).evaluate( context_node, type, result )
16
- end
17
-
18
- end
19
-
20
- class Expression
21
- def evaluate( context_node, type, result )
22
- end
23
- end
24
-
25
- class NSResolver
26
- def lookup_namespace_uri( prefix )
27
- end
28
- end
29
-
30
- class XPathResult
31
- # XPathResultType
32
- ANY_TYPE = 0
33
- NUMBER_TYPE = 1
34
- STRING_TYPE = 2
35
- BOOLEAN_TYPE = 3
36
- UNORDERED_NODE_ITERATOR_TYPE = 4
37
- ORDERED_NODE_ITERATOR_TYPE = 5
38
- UNORDERED_NODE_SNAPSHOT_TYPE = 6
39
- ORDERED_NODE_SNAPSHOT_TYPE = 7
40
- ANY_UNORDERED_NODE_TYPE = 8
41
- FIRST_ORDERED_NODE_TYPE = 9
42
-
43
- def result_type
44
- end
45
- def number_value
46
- end
47
- def string_value
48
- end
49
-
50
- def boolean_value
51
- end
52
-
53
- def single_node_value
54
- end
55
- def invalid_iterator_state
56
- end
57
- def snapshot_length
58
- end
59
-
60
- def iterate_next()
61
- end
62
- def snapshot_item( index )
63
- end
64
- end
65
-
66
- class Namespace < Node
67
- XPATH_NAMESPACE_NODE = 13
68
- def owner_element
69
- end
70
- end
71
-
72
- end
73
- end