class Aws::Lex::Conversation::Type::Slot

Public Instance Methods

active?() click to toggle source
# File lib/aws/lex/conversation/type/slot.rb, line 60
def active?
  @active
end
blank?() click to toggle source
# File lib/aws/lex/conversation/type/slot.rb, line 68
def blank?
  !filled?
end
filled?() click to toggle source
# File lib/aws/lex/conversation/type/slot.rb, line 64
def filled?
  shape.list? ? values.any? : value != '' && !value.nil?
end
requestable?() click to toggle source
# File lib/aws/lex/conversation/type/slot.rb, line 84
def requestable?
  active? && blank?
end
resolvable?() click to toggle source
# File lib/aws/lex/conversation/type/slot.rb, line 78
def resolvable?
  return false if shape.list?

  lex_value.resolvable?
end
resolve!(index: 0) click to toggle source
# File lib/aws/lex/conversation/type/slot.rb, line 72
def resolve!(index: 0)
  return if shape.list?

  lex_value.resolve!(index: index)
end
to_lex() click to toggle source
Calls superclass method
# File lib/aws/lex/conversation/type/slot.rb, line 22
def to_lex
  super.merge(extra_response_attributes)
end
value() click to toggle source
# File lib/aws/lex/conversation/type/slot.rb, line 32
def value
  raise TypeError, 'use values for List-type slots' if shape.list?

  lex_value.interpreted_value
end
value=(val) click to toggle source
# File lib/aws/lex/conversation/type/slot.rb, line 26
def value=(val)
  raise TypeError, 'use values= for List-type slots' if shape.list?

  lex_value.interpreted_value = val
end
values() click to toggle source
# File lib/aws/lex/conversation/type/slot.rb, line 54
def values
  raise TypeError, 'use value for Scalar-type slots' if shape.scalar?

  lex_values.map(&:value)
end
values=(vals) click to toggle source

takes an array of slot values

# File lib/aws/lex/conversation/type/slot.rb, line 39
def values=(vals)
  raise TypeError, 'use value= for Scalar-type slots' if shape.scalar?

  self.lex_values = vals.map do |val|
    Slot.shrink_wrap(
      active: true,
      value: {
        interpretedValue: val,
        originalValue: val,
        resolvedValues: [val]
      }
    )
  end
end

Private Instance Methods

extra_response_attributes() click to toggle source
# File lib/aws/lex/conversation/type/slot.rb, line 90
def extra_response_attributes
  if shape.list?
    {
      values: transform_to_lex(lex_values)
    }
  else
    {
      value: transform_to_lex(lex_value)
    }
  end
end