class Pakyow::Presenter::Attributes::Set
Wraps the value for a set-type view attribute (e.g. class).
Behaves just like a normal Set
.
Constants
- VALUE_SEPARATOR
Public Class Methods
parse(value)
click to toggle source
# File lib/pakyow/presenter/attributes/set.rb, line 48 def parse(value) if value.is_a?(Array) || value.is_a?(::Set) new(::Set.new(value.map { |v| ensure_html_safety(v) })) elsif value.respond_to?(:to_s) new(::Set.new(value.to_s.split(VALUE_SEPARATOR).map { |v| ensure_html_safety(v) })) else raise ArgumentError.new("expected value to be an Array, Set, or String") end end
Public Instance Methods
<<(value)
click to toggle source
# File lib/pakyow/presenter/attributes/set.rb, line 29 def <<(value) @value << ensure_html_safety(value) end
add(value)
click to toggle source
# File lib/pakyow/presenter/attributes/set.rb, line 33 def add(value) @value.add(ensure_html_safety(value)) end
delete(value)
click to toggle source
# File lib/pakyow/presenter/attributes/set.rb, line 37 def delete(value) @value.delete(value.to_s) end
include?(value)
click to toggle source
# File lib/pakyow/presenter/attributes/set.rb, line 25 def include?(value) @value.include?(value.to_s) end
to_s()
click to toggle source
# File lib/pakyow/presenter/attributes/set.rb, line 41 def to_s @value.to_a.join(VALUE_SEPARATOR) end