class Tagz::Namespace::Element
Attributes
name[R]
Public Class Methods
attributes(options)
click to toggle source
# File lib/tagz.rb, line 305 def Element.attributes(options) unless options.empty? ' ' << options.map do |key, value| key = Tagz.escape_key(key) value = Tagz.escape_value(value) if value =~ %r/"/ raise ArgumentError, value if value =~ %r/'/ value = "'#{ value }'" else raise ArgumentError, value if value =~ %r/"/ value = "\"#{ value }\"" end [key, value].join('=') end.join(' ') else '' end end
new(name, *argv, &block)
click to toggle source
# File lib/tagz.rb, line 327 def initialize(name, *argv, &block) options = {} content = [] argv.each do |arg| case arg when Hash options.update arg else content.push arg end end content.push block.call if block content.compact! @name = name.to_s if content.empty? replace "<#{ @name }#{ Element.attributes options }>" else replace "<#{ @name }#{ Element.attributes options }>#{ content.join }</#{ name }>" end end