Module
The TextConstruct
module is used to define a Text construct Atom
element, which is used to store small quantities of human-readable text.
The TextConstruct
has a type attribute, e.g. text, html, xhtml
Reference: validator.w3.org/feed/docs/rfc4287.html#text.constructs
Attributes
Write
No documentation available
Class Methods
lib/rss/atom.rb
View on GitHub
# File tmp/rubies/ruby-2.6.10/lib/rss/atom.rb, line 103
def self.append_features(klass)
super
klass.class_eval do
[
["type", ""],
].each do |name, uri, required|
install_get_attribute(name, uri, required, :text_type)
end
content_setup
add_need_initialize_variable("xhtml")
class << self
def xml_getter
"xhtml"
end
def xml_setter
"xhtml="
end
end
end
end
No documentation available
::
lib/rss/atom.rb
View on GitHub
# File tmp/rubies/ruby-2.6.10/lib/rss/atom.rb, line 116
def xml_getter
"xhtml"
end
No documentation available
::
lib/rss/atom.rb
View on GitHub
# File tmp/rubies/ruby-2.6.10/lib/rss/atom.rb, line 120
def xml_setter
"xhtml="
end
No documentation available
Instance Methods
lib/rss/atom.rb
View on GitHub
# File tmp/rubies/ruby-2.6.10/lib/rss/atom.rb, line 150
def atom_validate(ignore_unknown_element, tags, uri)
if have_xml_content?
if @xhtml.nil?
raise MissingTagError.new("div", tag_name)
end
unless [@xhtml.name, @xhtml.uri] == ["div", XHTML_URI]
raise NotExpectedTagError.new(@xhtml.name, @xhtml.uri, tag_name)
end
end
end
Raises a MissingTagError
or NotExpectedTagError
if the element is not properly formatted.
lib/rss/atom.rb
View on GitHub
# File tmp/rubies/ruby-2.6.10/lib/rss/atom.rb, line 144
def have_xml_content?
@type == "xhtml"
end
Returns true if type is “xhtml”.
lib/rss/atom.rb
View on GitHub
# File tmp/rubies/ruby-2.6.10/lib/rss/atom.rb, line 162
def maker_target(target)
target.__send__(self.class.name.split(/::/).last.downcase) {|x| x}
end
No documentation available
lib/rss/atom.rb
View on GitHub
# File tmp/rubies/ruby-2.6.10/lib/rss/atom.rb, line 166
def setup_maker_attributes(target)
target.type = type
target.content = content
target.xml_content = @xhtml
end
No documentation available
#
lib/rss/atom.rb
View on GitHub
# File tmp/rubies/ruby-2.6.10/lib/rss/atom.rb, line 130
def xhtml
return @xhtml if @xhtml.nil?
if @xhtml.is_a?(XML::Element) and
[@xhtml.name, @xhtml.uri] == ["div", XHTML_URI]
return @xhtml
end
children = @xhtml
children = [children] unless children.is_a?(Array)
XML::Element.new("div", nil, XHTML_URI,
{"xmlns" => XHTML_URI}, children)
end
Returns or builds the XHTML content.