class REXML::AttlistDecl
这个类需要
-
文档
-
工作!并非所有类型的属性列表都被智能地解析,所以我们只是
把我们得到的东西吐回去。这可以工作,但如果我们自己格式化输出会更好。
AttlistDecls 仅提供**足够**的支持以允许命名空间声明。如果您需要某种通用支持,或者对如何将 DTD
的可怕设计 AttlistDecls 映射到直观的 Ruby 接口有有趣的想法,请告诉我。我迫切需要任何使 DTD 更可口的东西。
属性
element_name[R]
这是什么?我也不知道。
公共类方法
new(source) 点击切换源代码
创建一个 AttlistDecl
,从 Source
中提取信息。请注意,这不是很方便;要创建一个 AttlistDecl
,您基本上必须自己格式化它,然后让初始化器解析它。很抱歉,但在可预见的未来,REXML
中对 DTD
的支持在便利性方面相当薄弱。我有提到过我有多讨厌 DTD 吗?
调用超类方法
# File rexml-3.4.0/lib/rexml/attlistdecl.rb, line 29 def initialize(source) super() if (source.kind_of? Array) @element_name, @pairs, @contents = *source end end
公共实例方法
[](key) 点击切换源代码
访问属性列表的属性/值对。
value = attlist_decl[ attribute_name ]
# File rexml-3.4.0/lib/rexml/attlistdecl.rb, line 38 def [](key) @pairs[key] end
each(&block) 点击切换源代码
迭代键/值对
attlist_decl.each { |attribute_name, attribute_value| ... }
# File rexml-3.4.0/lib/rexml/attlistdecl.rb, line 50 def each(&block) @pairs.each(&block) end
include?(key) 点击切换源代码
判断属性列表声明是否包含给定的属性定义
if attlist_decl.include? "xmlns:foobar"
# File rexml-3.4.0/lib/rexml/attlistdecl.rb, line 44 def include?(key) @pairs.keys.include? key end
node_type() 点击切换源代码
# File rexml-3.4.0/lib/rexml/attlistdecl.rb, line 59 def node_type :attlistdecl end
write(out, indent=-1) 点击切换源代码
原样写出我们得到的东西。
# File rexml-3.4.0/lib/rexml/attlistdecl.rb, line 55 def write out, indent=-1 out << @contents end