Sha256: 4e2df15261908d21d50c91c4656f6301824d235d6e6a8d9c043b5f2863484949
Contents?: true
Size: 670 Bytes
Versions: 3
Compression:
Stored size: 670 Bytes
Contents
# frozen_string_literal: true module GoogleAssistant class Argument attr_reader :name, :raw_text, :text_value def self.from(opts) case opts["name"] when "permission_granted" PermissionArgument.new(opts) when "text" TextArgument.new(opts) else Argument.new(opts) end end def initialize(opts) @name = opts["name"] @raw_text = opts["raw_text"] @text_value = opts["text_value"] end end class TextArgument < Argument alias_method :value, :text_value end class PermissionArgument < Argument def permission_granted? text_value == "true" end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
google_assistant-1.0.0 | lib/google_assistant/argument.rb |
google_assistant-1.0.0.beta | lib/google_assistant/argument.rb |
google_assistant-0.2.0 | lib/google_assistant/argument.rb |