class Opushon::RestrictedValue

If present, the value of restricted_values is an array where each item

contains a hash.

Attributes

description[R]
title[R]
value[R]

Public Class Methods

load(hash) click to toggle source
# File lib/opushon/restricted_value.rb, line 7
def self.load(hash)
  raise ArgumentError, "hash #{hash.inspect}" unless hash.is_a?(Hash)

  title       = hash.fetch('title',       nil)
  description = hash.fetch('description', nil)
  value       = hash.fetch('value',       nil)

  hash = {
    title:        title,
    description:  description,
    value:        value
  }.compact

  new(**hash)
end
new(title: '', description: '', value:) click to toggle source
# File lib/opushon/restricted_value.rb, line 25
def initialize(title: '', description: '', value:)
  raise ArgumentError, "title #{title.inspect}"             unless title.is_a?(String)
  raise ArgumentError, "description #{description.inspect}" unless description.is_a?(String)
  raise ArgumentError, "value #{value.inspect}"             unless value.is_a?(BasicObject)

  @title        = title
  @description  = description
  @value        = value
end

Public Instance Methods

to_h() click to toggle source
# File lib/opushon/restricted_value.rb, line 35
def to_h
  {
    title:        title,
    description:  description,
    value:        value
  }
end