module XMLable::Mixins::AttributesStorage::ClassMethods

Public Instance Methods

__attributes_handlers() click to toggle source

Attributes handlers storage

@return [XMLable::Handlers::Storage]

# File lib/xmlable/mixins/attributes_storage.rb, line 172
def __attributes_handlers
  @__attributes_handlers ||=
    __nested(:@__attributes_handlers) || Handlers::Storage.new(default: Handlers::AttributeNone)
end
attribute(*args, &block) click to toggle source

Describe object attribute

@see XMLable::Handler::Base#build

@return [XMLable::Handlers::Storage]

# File lib/xmlable/mixins/attributes_storage.rb, line 184
def attribute(*args, &block)
  opts = args.last.is_a?(Hash) ? args.pop : {}
  if __default_namespace && !opts.key?(:namespace)
    opts[:namespace] = __default_namespace
  end
  h = Handlers::Attribute.build(*args, opts, &block)
  __attributes_handlers << h
end