You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
24 lines
497 B
24 lines
497 B
# frozen_string_literal: true |
|
|
|
class RSS::Element |
|
def self.with(*args, &block) |
|
new(*args).tap(&block).to_element |
|
end |
|
|
|
def create_element(name, content = nil) |
|
Ox::Element.new(name).tap do |element| |
|
yield element if block_given? |
|
element << content if content.present? |
|
end |
|
end |
|
|
|
def append_element(name, content = nil) |
|
@root << create_element(name, content).tap do |element| |
|
yield element if block_given? |
|
end |
|
end |
|
|
|
def to_element |
|
@root |
|
end |
|
end
|
|
|